FrontISTR 5.2.0
Large-scale structural analysis program with finit element method
Loading...
Searching...
No Matches
separator_c2f_c.c
Go to the documentation of this file.
1/*****************************************************************************
2 * Copyright (c) 2019 FrontISTR Commons
3 * This software is released under the MIT License, see LICENSE.txt
4 *****************************************************************************/
5
6#include <stdio.h>
7#include "separator.h"
9
10void get_part_result(int *num_graph1, int *igraph1, int *num_graph2,
11 int *igraph2, int *num_separator, int *iseparator) {
12 int i;
13 /* FILE *fp; */
14 /* char string1[4], filename[128]; */
15 /* change to fortran style */
16 for (i = 0; i < separator->num_of_lgraph; i++) separator->lgraph[i] += 1;
17 for (i = 0; i < separator->num_of_rgraph; i++) separator->rgraph[i] += 1;
18 for (i = 0; i < separator->num_of_separator; i++)
19 separator->mseparator[i] += 1;
20 /* output to file */
21 /* fprintf(stderr, "Would you like to output to file? (y/n)\n");
22 scanf("%s", string1);
23 if(string1[0]=='y') {
24 fprintf(stderr, "please input the file name\n");
25 scanf("%s", filename);
26
27 fp=fopen("result_part.dat", "w");
28 if(fp==NULL) {
29 fprintf(stderr, "Cannot open the output file %s",
30 filename);
31 exit(0);
32 }
33 fprintf(fp, "num_of_lgraph: %d num_of_rgraph: %d
34 num_of_separator: %d\n", separator->num_of_lgraph,
35 separator->num_of_rgraph, separator->num_of_separator);
36 fprintf(fp, "####### vertex in lgraph: %d\n",
37 separator->num_of_lgraph);
38 for(i=0;i<separator->num_of_lgraph;i++)
39 fprintf(fp, "%d\n", separator->lgraph[i]);
40 fprintf(fp, "\n");
41 fprintf(fp, "####### vertex in rgraph: %d\n",
42 separator->num_of_rgraph);
43 for(i=0;i<separator->num_of_rgraph;i++)
44 fprintf(fp, "%d\n", separator->rgraph[i]);
45 fprintf(fp, "\n");
46 fprintf(fp, "####### vertex in separator: %d\n",
47 separator->num_of_separator);
48 for(i=0;i<separator->num_of_separator;i++)
49 fprintf(fp, "%d\n", separator->mseparator[i]);
50 fclose(fp);
51
52 }
53 */
54 for (i = 0; i < separator->num_of_lgraph; i++)
55 igraph1[i] = separator->lgraph[i];
56 for (i = 0; i < separator->num_of_rgraph; i++)
57 igraph2[i] = separator->rgraph[i];
58 for (i = 0; i < separator->num_of_separator; i++)
59 iseparator[i] = separator->mseparator[i];
60 return;
61}
62
63void get_part_result_(int *num_graph1, int *igraph1, int *num_graph2,
64 int *igraph2, int *num_separator, int *iseparator) {
65 get_part_result(num_graph1, igraph1, num_graph2, igraph2, num_separator,
66 iseparator);
67}
68
69void get_part_result__(int *num_graph1, int *igraph1, int *num_graph2,
70 int *igraph2, int *num_separator, int *iseparator) {
71 get_part_result(num_graph1, igraph1, num_graph2, igraph2, num_separator,
72 iseparator);
73}
74
75void GET_PART_RESULT(int *num_graph1, int *igraph1, int *num_graph2,
76 int *igraph2, int *num_separator, int *iseparator) {
77 get_part_result(num_graph1, igraph1, num_graph2, igraph2, num_separator,
78 iseparator);
79}
void get_part_result(int *num_graph1, int *igraph1, int *num_graph2, int *igraph2, int *num_separator, int *iseparator)
Separator_result * separator
Definition: matrix_repart.c:16
void get_part_result__(int *num_graph1, int *igraph1, int *num_graph2, int *igraph2, int *num_separator, int *iseparator)
void get_part_result_(int *num_graph1, int *igraph1, int *num_graph2, int *igraph2, int *num_separator, int *iseparator)
void GET_PART_RESULT(int *num_graph1, int *igraph1, int *num_graph2, int *igraph2, int *num_separator, int *iseparator)