FrontISTR  5.7.0
Large-scale structural analysis program with finit element method
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 
10 void 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 
63 void 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 
69 void 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 
75 void 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 }
_separation_result
Definition: separator.h:14
get_part_result__
void get_part_result__(int *num_graph1, int *igraph1, int *num_graph2, int *igraph2, int *num_separator, int *iseparator)
Definition: separator_c2f_c.c:69
_separation_result::lgraph
int * lgraph
Definition: separator.h:18
GET_PART_RESULT
void GET_PART_RESULT(int *num_graph1, int *igraph1, int *num_graph2, int *igraph2, int *num_separator, int *iseparator)
Definition: separator_c2f_c.c:75
_separation_result::rgraph
int * rgraph
Definition: separator.h:19
_separation_result::num_of_rgraph
int num_of_rgraph
Definition: separator.h:16
get_part_result_
void get_part_result_(int *num_graph1, int *igraph1, int *num_graph2, int *igraph2, int *num_separator, int *iseparator)
Definition: separator_c2f_c.c:63
_separation_result::num_of_separator
int num_of_separator
Definition: separator.h:17
separator
Separator_result * separator
Definition: matrix_repart.c:16
_separation_result::mseparator
int * mseparator
Definition: separator.h:20
_separation_result::num_of_lgraph
int num_of_lgraph
Definition: separator.h:15
separator.h
get_part_result
void get_part_result(int *num_graph1, int *igraph1, int *num_graph2, int *igraph2, int *num_separator, int *iseparator)
Definition: separator_c2f_c.c:10