FrontISTR  5.2.0
Large-scale structural analysis program with finit element method
fstr_rmerge_util.h
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 
10 #include <stdio.h>
11 #include <stdlib.h>
12 #include <time.h>
13 
14 #include "hecmw_util.h"
15 #include "hecmw_io_mesh.h"
16 #include "hecmw_io_struct.h"
17 #include "hecmw_struct.h"
18 #include "hecmw_config.h"
19 #include "hecmw_dist.h"
20 #include "hecmw_dist_free.h"
21 #include "hecmw_common.h"
22 
23 #include "hecmw_control.h"
24 #include "hecmw_result.h"
25 #include "hecmw_io_dist.h"
26 #include "hecmw_io_get_mesh.h"
27 
32 typedef struct {
33  int nnode_gid;
34  int nelem_gid;
35  int* node_gid;
36  int* elem_gid;
39 
44 typedef struct {
45  int global;
46  int local;
47  int area;
48 } fstr_gl_rec;
49 
54 typedef struct {
57  int node_n;
58  int elem_n;
59 } fstr_glt;
60 
64 struct hecmwST_local_mesh** fstr_get_all_local_mesh(char* name_ID, int* area_n,
65  int* refine);
66 
70 void fstr_free_mesh(struct hecmwST_local_mesh** mesh, int area_n);
71 
75 int fstr_get_step_n(char* name_ID);
76 
80 fstr_res_info** fstr_get_all_result(char* name_ID, int step, int area_n,
81  int refine);
82 
87  int refine);
88 
92 void fstr_free_result(fstr_res_info** res, int area_n);
93 
97 fstr_glt* fstr_create_glt(struct hecmwST_local_mesh** mesh, int area_n);
98 
102 void fstr_free_glt(fstr_glt* glt);
103 
108 
112 void fstr_free_glmesh(struct hecmwST_local_mesh* mp);
struct hecmwST_local_mesh * fstr_create_glmesh(fstr_glt *glt)
単一領域メッシュの作成
int fstr_get_step_n(char *name_ID)
ステップ数を調べる(ファイルの存在を調べる)
fstr_glt * fstr_create_glt(struct hecmwST_local_mesh **mesh, int area_n)
テーブル fstr_glt の作成
void fstr_free_glt(fstr_glt *glt)
fstr_glt の削除
struct hecmwST_local_mesh ** fstr_get_all_local_mesh(char *name_ID, int *area_n, int *refine)
全分散メッシュの読込み
struct hecmwST_result_data * fstr_all_result(fstr_glt *glt, fstr_res_info **res, int refine)
ステップの全領域のデータの結合
void fstr_free_result(fstr_res_info **res, int area_n)
fstr_res_info の削除
void fstr_free_glmesh(struct hecmwST_local_mesh *mp)
単一領域メッシュの削除
fstr_res_info ** fstr_get_all_result(char *name_ID, int step, int area_n, int refine)
ステップの全領域データの読み込み
void fstr_free_mesh(struct hecmwST_local_mesh **mesh, int area_n)
メッシュの削除
グローバル・ローカルID対応
グローバル・ローカル対応表
fstr_gl_rec * nrec
fstr_gl_rec * erec
分散で計算された結果を読込み処理するためのユーティリティ
struct hecmwST_result_data * result