1 /* $Header: /var/cvs/mbdyn/mbdyn/mbdyn-1.0/libraries/libmbc/mbc_py_global.h,v 1.10 2017/01/12 14:43:43 masarati Exp $ */
2 /*
3  * MBDyn (C) is a multibody analysis code.
4  * http://www.mbdyn.org
5  *
6  * Copyright (C) 1996-2017
7  *
8  * Pierangelo Masarati	<masarati@aero.polimi.it>
9  * Paolo Mantegazza	<mantegazza@aero.polimi.it>
10  *
11  * Dipartimento di Ingegneria Aerospaziale - Politecnico di Milano
12  * via La Masa, 34 - 20156 Milano, Italy
13  * http://www.aero.polimi.it
14  *
15  * Changing this copyright notice is forbidden.
16  *
17  * This program is free software; you can redistribute it and/or modify
18  * it under the terms of the GNU General Public License as published by
19  * the Free Software Foundation (version 2 of the License).
20  *
21  *
22  * This program is distributed in the hope that it will be useful,
23  * but WITHOUT ANY WARRANTY; without even the implied warranty of
24  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
25  * GNU General Public License for more details.
26  *
27  * You should have received a copy of the GNU General Public License
28  * along with this program; if not, write to the Free Software
29  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
30  */
31 
32 #ifndef MBC_GLOBAL_PY_H
33 #define MBC_GLOBAL_PY_H
34 
35 #ifdef SWIG
36 %import "mbc_py_global.i"
37 #endif // SWIG
38 
39 #ifndef extern_t
40 #define extern_t extern
41 #endif // extern_t
42 
43 /* reference node global data */
44 
45 extern_t unsigned *mbc_r_k_label;
46 extern_t double *mbc_r_x;
47 extern_t double *mbc_r_theta;
48 extern_t double *mbc_r_r;
49 extern_t double *mbc_r_euler_123;
50 extern_t double *mbc_r_xp;
51 extern_t double *mbc_r_omega;
52 extern_t double *mbc_r_xpp;
53 extern_t double *mbc_r_omegap;
54 extern_t unsigned *mbc_r_d_label;
55 extern_t double *mbc_r_f;
56 extern_t double *mbc_r_m;
57 
58 extern_t unsigned mbc_r_k_label_size;
59 extern_t unsigned mbc_r_x_size;
60 extern_t unsigned mbc_r_theta_size;
61 extern_t unsigned mbc_r_r_size;
62 extern_t unsigned mbc_r_euler_123_size;
63 extern_t unsigned mbc_r_xp_size;
64 extern_t unsigned mbc_r_omega_size;
65 extern_t unsigned mbc_r_xpp_size;
66 extern_t unsigned mbc_r_omegap_size;
67 extern_t unsigned mbc_r_d_label_size;
68 extern_t unsigned mbc_r_f_size;
69 extern_t unsigned mbc_r_m_size;
70 
71 /* nodal element global data */
72 
73 extern_t unsigned *mbc_n_k_labels;
74 extern_t double *mbc_n_x;
75 extern_t double *mbc_n_theta;
76 extern_t double *mbc_n_r;
77 extern_t double *mbc_n_euler_123;
78 extern_t double *mbc_n_xp;
79 extern_t double *mbc_n_omega;
80 extern_t double *mbc_n_xpp;
81 extern_t double *mbc_n_omegap;
82 extern_t unsigned *mbc_n_d_labels;
83 extern_t double *mbc_n_f;
84 extern_t double *mbc_n_m;
85 
86 extern_t unsigned mbc_n_k_labels_size;
87 extern_t unsigned mbc_n_x_size;
88 extern_t unsigned mbc_n_theta_size;
89 extern_t unsigned mbc_n_r_size;
90 extern_t unsigned mbc_n_euler_123_size;
91 extern_t unsigned mbc_n_xp_size;
92 extern_t unsigned mbc_n_omega_size;
93 extern_t unsigned mbc_n_xpp_size;
94 extern_t unsigned mbc_n_omegap_size;
95 extern_t unsigned mbc_n_d_labels_size;
96 extern_t unsigned mbc_n_f_size;
97 extern_t unsigned mbc_n_m_size;
98 
99 /* modal element global data */
100 
101 extern_t double *mbc_m_q;
102 extern_t double *mbc_m_qp;
103 extern_t double *mbc_m_p;
104 
105 extern_t uint32_t mbc_m_q_size;
106 extern_t uint32_t mbc_m_qp_size;
107 extern_t uint32_t mbc_m_p_size;
108 
109 #endif // MBC_PY_H
110