static void writeraw(t_interf ***int1, t_interf ***int2, int tblocks, int xbins, int ybins, char **fnms, const gmx_output_env_t *oenv) { FILE *raw1, *raw2; int i, j, n; raw1 = gmx_ffopen(fnms[0], "w"); raw2 = gmx_ffopen(fnms[1], "w"); try { gmx::BinaryInformationSettings settings; settings.generatedByHeader(true); settings.linePrefix("# "); gmx::printBinaryInformation(raw1, output_env_get_program_context(oenv), settings); gmx::printBinaryInformation(raw2, output_env_get_program_context(oenv), settings); } GMX_CATCH_ALL_AND_EXIT_WITH_FATAL_ERROR; fprintf(raw1, "# Legend: nt nx ny\n# Xbin Ybin Z t\n"); fprintf(raw2, "# Legend: nt nx ny\n# Xbin Ybin Z t\n"); fprintf(raw1, "%i %i %i\n", tblocks, xbins, ybins); fprintf(raw2, "%i %i %i\n", tblocks, xbins, ybins); for (n = 0; n < tblocks; n++) { for (i = 0; i < xbins; i++) { for (j = 0; j < ybins; j++) { fprintf(raw1, "%i %i %8.5f %6.4f\n", i, j, (int1[n][j+ybins*i])->Z, (int1[n][j+ybins*i])->t); fprintf(raw2, "%i %i %8.5f %6.4f\n", i, j, (int2[n][j+ybins*i])->Z, (int2[n][j+ybins*i])->t); } } } gmx_ffclose(raw1); gmx_ffclose(raw2); }
void xvgr_header(FILE *fp, const char *title, const char *xaxis, const char *yaxis, int exvg_graph_type, const gmx_output_env_t *oenv) { char pukestr[100], buf[STRLEN]; if (output_env_get_print_xvgr_codes(oenv)) { gmx_format_current_time(buf, STRLEN); fprintf(fp, "# This file was created %s", buf); try { gmx::BinaryInformationSettings settings; settings.generatedByHeader(true); settings.linePrefix("# "); gmx::printBinaryInformation(fp, output_env_get_program_context(oenv), settings); } GMX_CATCH_ALL_AND_EXIT_WITH_FATAL_ERROR; fprintf(fp, "# %s is part of G R O M A C S:\n#\n", output_env_get_program_display_name(oenv)); bromacs(pukestr, 99); fprintf(fp, "# %s\n#\n", pukestr); fprintf(fp, "@ title \"%s\"\n", xvgrstr(title, oenv, buf, STRLEN)); fprintf(fp, "@ xaxis label \"%s\"\n", xvgrstr(xaxis, oenv, buf, STRLEN)); fprintf(fp, "@ yaxis label \"%s\"\n", xvgrstr(yaxis, oenv, buf, STRLEN)); switch (exvg_graph_type) { case exvggtXNY: if (output_env_get_xvg_format(oenv) == exvgXMGR) { fprintf(fp, "@TYPE nxy\n"); } else { fprintf(fp, "@TYPE xy\n"); } break; case exvggtXYDY: fprintf(fp, "@TYPE xydy\n"); break; case exvggtXYDYDY: fprintf(fp, "@TYPE xydydy\n"); break; } } }