forked from goma/goma
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmm_more_utils.h
123 lines (102 loc) · 6.45 KB
/
mm_more_utils.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
/************************************************************************ *
* Goma - Multiphysics finite element software *
* Sandia National Laboratories *
* *
* Copyright (c) 2022 Goma Developers, National Technology & Engineering *
* Solutions of Sandia, LLC (NTESS) *
* *
* Under the terms of Contract DE-NA0003525, the U.S. Government retains *
* certain rights in this software. *
* *
* This software is distributed under the GNU General Public License. *
* See LICENSE file. *
\************************************************************************/
/*
* mm_more_utils.h -- prototype declarations for mm_more_utils.c
*/
#ifndef GOMA_MM_MORE_UTILS_H
#define GOMA_MM_MORE_UTILS_H
#include "el_elm.h"
#include "exo_struct.h"
#include "mm_input.h"
#include "std.h"
struct Results_Description;
#ifdef EXTERN
#undef EXTERN
#endif
#ifdef GOMA_MM_MORE_UTILS_C
#define EXTERN /* do nothing */
#endif
#ifndef GOMA_MM_MORE_UTILS_C
#define EXTERN extern
#endif
EXTERN int cnt_nodal_vars /* mm_more_utils.c */
(void);
EXTERN int cnt_elem_vars /* mm_more_utils.c */
(const Exo_DB *);
EXTERN int goal_post_nodal /* mm_more_utils.c */
(const int); /* var */
EXTERN int goal_post_elem /* mm_more_utils.c */
(const int); /* var */
EXTERN int set_nv_tkud /* mm_more_utils.c */
(struct Results_Description *, /* r - just node results for Exodus II */
const int, /* i - index */
const int, /* v - variable index */
const int, /* k - kind */
const int, /* matIndex - material index */
const char *, /* name - name (short) */
const char *, /* unit - units (unused) */
const char *, /* desc - name (long, unused) */
const int); /* derivative - indicating time derivative */
EXTERN int set_ev_tkud /* mm_more_utils.c */
(struct Results_Description *, /* r - just elem results for Exodus II */
const int, /* i - index */
const int, /* v - variable index */
const char *, /* name - name (short) */
const char *, /* unit - units (unused) */
const char *, /* desc - name (long, unused) */
const int); /* derivative - indicating time derivative */
EXTERN int load_global_var_info /* mm_more_utils.c */
(struct Results_Description *, /* r - global results for Exodus II */
const int, /* i - index */
const char *); /* name - name (short) */
EXTERN void sum_total_stress /* mm_more_utils.c */
(double[], /* sol_vec */
int, /* var_no */
int, /* k */
double[], /* nodal_vec */
Exo_DB *); /* exo */
EXTERN void extract_nodal_vec /* mm_more_utils.c */
(double[], /* sol_vec */
int, /* var_no */
int, /* k */
int, /* matIndex */
double[], /* nodal_vec */
Exo_DB *, /* exo */
int, /* timeDerivative */
dbl); /* current time */
EXTERN void extract_nodal_eb_vec /* mm_more_utils.c */
(double[], /* sol_vec */
int, /* var_no */
int, /* ktype */
int, /* matIndex */
int, /* eb_index */
double[], /* nodal_vec */
Exo_DB *, /* exo */
int, /* timeDeriviative */
double); /* time */
EXTERN void extract_elem_vec /* mm_more_utils.c */
(const double[], /* sol_vec */
const int, /* ev_indx */
const int, /* var_no */
double ***, /* gvec_elem */
const Exo_DB *,
const int dof); /* degrees of freedom */
EXTERN void anneal_map /* mm_more_utils.c */
(const int, /* dim */
const double[], /* X_old */
const double[], /* displacement */
double[]); /* X_new */
EXTERN int get_new_coord(double *[DIM], double *, const Exo_DB *);
EXTERN void elements_attached_to_NS(int *, int, Exo_DB *);
#endif /* GOMA_MM_MORE_UTILS_H */