1 |
commit: f548beeb36894738ee81d67ee7ab13d60efe5e26 |
2 |
Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
3 |
AuthorDate: Thu May 26 23:44:49 2022 +0000 |
4 |
Commit: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
5 |
CommitDate: Fri May 27 11:28:07 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=f548beeb |
7 |
|
8 |
sci-physics/mbdyn: move MBDYN_MODULE to profiles/desc |
9 |
|
10 |
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com> |
11 |
|
12 |
profiles/desc/mbdyn_module.desc | 70 ++++++++++++++ |
13 |
sci-physics/mbdyn/mbdyn-1.7.3_p20210925-r1.ebuild | 108 ++++++---------------- |
14 |
sci-physics/mbdyn/metadata.xml | 66 ------------- |
15 |
3 files changed, 96 insertions(+), 148 deletions(-) |
16 |
|
17 |
diff --git a/profiles/desc/mbdyn_module.desc b/profiles/desc/mbdyn_module.desc |
18 |
new file mode 100644 |
19 |
index 000000000..d217ff215 |
20 |
--- /dev/null |
21 |
+++ b/profiles/desc/mbdyn_module.desc |
22 |
@@ -0,0 +1,70 @@ |
23 |
+# Copyright 2022 Gentoo Authors |
24 |
+# Distributed under the terms of the GNU General Public License v2 |
25 |
+ |
26 |
+# This file contains descriptions of MBDYN_MODULE USE_EXPAND flags. |
27 |
+ |
28 |
+FMU - This is a module to import and cosimulation of FMUs, developed using FMI standards, for MBDyn |
29 |
+aerodyn - This is MBDyn's module for the wind-turbine aerodynamics library AeroDyn |
30 |
+asynchronous-machine - The purpose of this code is the simulation of an asynchronous electrical machine as a part of a multibody model |
31 |
+autodiff-test - This element implements a inline joint with friction |
32 |
+ballbearing-contact - ball bearing contact |
33 |
+bullet - sci-physics/bullet module |
34 |
+charm - This module implements a user-defined induced velocity element based on CDI's CHARM free wake |
35 |
+constlaw-f90 - This directory contains an example of run-time loadable constitutive law written in Fortran 90 |
36 |
+constlaw-f95 - This directory contains an example of run-time loadable constitutive law written in Fortran 95 |
37 |
+constlaw - This directory contains an example of run-time loadable constitutive law |
38 |
+cont-contact - continuous contact |
39 |
+controller - controller module |
40 |
+convtest - convergence test module |
41 |
+cyclocopter - This module implements induced velocity models for cycloidal rotors |
42 |
+damper-gandhi - Gandhi, F. and Chopra, I., "An analytical model for a nonlinear elastomeric lag damper and its effect on aeromechanical stability in hover" Journal of the American Helicopter Society, Vol. 39, 1994, pp. 59-69. |
43 |
+damper-graall - GRAALL Damper Constitutive Law |
44 |
+damper-hydraulic - Hydraulic Damper Constitutive Law |
45 |
+damper - It implements a 1D constitutive law based on a generic nonlinear rheological formula, whose coefficients are computed by means of parameter identification from experimental measurements |
46 |
+diff - diff drive module |
47 |
+dot - dot language module |
48 |
+drive-test - drive test module |
49 |
+drive - example of run-time loadable drive |
50 |
+dummy - Dummy module --- does nothing, used to test the infrastructure |
51 |
+eu2phi - converts three Euler angles into the corresponding Euler vector |
52 |
+fab-electric - Library of electric components for "digital fabrication" machines |
53 |
+fab-motion - Library of motion transmission components for "digital fabrication" machines |
54 |
+fab-sbearings - Library of bearings for "digital fabrication" machines |
55 |
+fabricate - Library of components of "digital fabrication" machines |
56 |
+flightgear - flightgear module |
57 |
+friction - eXperimental friction model |
58 |
+friction3 - eXperimental friction model (2nd try) |
59 |
+hfelem - Harmonic Excitation Element |
60 |
+hid - This module registers a file driver that captures the input from HID USB devices (only tested with some joysticks) |
61 |
+hunt-crossley - HuntCrossley constitutive law |
62 |
+hydrodynamic-plain-bearing - This module implements a hydrodynamic plain bearing according to Hans Juergen Butenschoen 1976 Das hydrodynamische zylindrische Gleitlager endlicher Breite unter instationaerer Belastung |
63 |
+hydrodynamic-plain-bearing2 - module hydrodynamic plain bearing2 |
64 |
+imu - implements two uses of a IMU |
65 |
+indvel - This module implements a dummy induced velocity model |
66 |
+inline-friction - This element implements a inline joint with friction |
67 |
+inplane-friction - In plane friction |
68 |
+journal-bearing - This element implements a journal bearing with lugre friction |
69 |
+leapmotion - leapmotion hand |
70 |
+loadinc - load increment normalization |
71 |
+marble - marble model for icecube robot |
72 |
+md - MD module |
73 |
+mds - mds module |
74 |
+minmaxdrive - minmaxdrive module |
75 |
+multi-step-drive - multi step drive module |
76 |
+muscles - muscle module |
77 |
+namespace - namespace module |
78 |
+nodedistdrive - node dist drive module |
79 |
+nonsmooth-node - Defines a unilateral constraint in form of a contact between a node and one or more planes, optionally with friction |
80 |
+ns - ns1 module |
81 |
+octave - octave module |
82 |
+randdrive - rand drive module |
83 |
+rollercoaster - rollercoaster module |
84 |
+rotor-loose-coupling - rotor loose coupling |
85 |
+scalarfunc - example of run-time loadable scalar function |
86 |
+switch-drive - switch drive module |
87 |
+tclpgin - tcl plugin |
88 |
+triangular-contact - This element implements unilateral contact with friction between an arbitrary rigid body, represented by a triangular mesh, and a set of nodes with arbitrary offsets |
89 |
+udunits - This module adds a namespace "units" with the only function "convert", which is thus invoked as "units::convert" |
90 |
+uni-in-plane - This element implements the unilateral contact between a point and a plane |
91 |
+wheel2 - Connects 2 structural nodes: Wheel Ground |
92 |
+wheel4 - L. Gagnon, M. J. Richard, P. Masarati, M. Morandini, and G. Dore. Multibody simulation of tires operating on an uneven road. In Multibody Dynamics 2011, 4-7 July 2011 |
93 |
|
94 |
diff --git a/sci-physics/mbdyn/mbdyn-1.7.3_p20210925-r1.ebuild b/sci-physics/mbdyn/mbdyn-1.7.3_p20210925-r1.ebuild |
95 |
index 442cd6e0d..73aa5c47f 100644 |
96 |
--- a/sci-physics/mbdyn/mbdyn-1.7.3_p20210925-r1.ebuild |
97 |
+++ b/sci-physics/mbdyn/mbdyn-1.7.3_p20210925-r1.ebuild |
98 |
@@ -1,4 +1,4 @@ |
99 |
-# Copyright 1999-2021 Gentoo Authors |
100 |
+# Copyright 1999-2022 Gentoo Authors |
101 |
# Distributed under the terms of the GNU General Public License v2 |
102 |
|
103 |
EAPI=7 |
104 |
@@ -17,75 +17,23 @@ S="${WORKDIR}/${MYP}" |
105 |
LICENSE="GPL-2" |
106 |
SLOT="0" |
107 |
KEYWORDS="~amd64" |
108 |
-# mbdyn-module-FMU # needs fmi-library |
109 |
-# mbdyn-module-aerodyn # needs aerodyn |
110 |
-# mbdyn-module-cudatest # needs cuda |
111 |
-IUSE_MBDYN_MODULE=" |
112 |
- mbdyn-module-asynchronous_machine |
113 |
- mbdyn-module-autodiff_test |
114 |
- mbdyn-module-ballbearing_contact |
115 |
- mbdyn-module-bullet |
116 |
- mbdyn-module-charm |
117 |
- mbdyn-module-constlaw-f90 |
118 |
- mbdyn-module-constlaw-f95 |
119 |
- mbdyn-module-constlaw |
120 |
- mbdyn-module-cont-contact |
121 |
- mbdyn-module-controller |
122 |
- mbdyn-module-convtest |
123 |
- mbdyn-module-cyclocopter |
124 |
- mbdyn-module-damper-gandhi |
125 |
- mbdyn-module-damper-graall |
126 |
- mbdyn-module-damper-hydraulic |
127 |
- mbdyn-module-damper |
128 |
- mbdyn-module-diff |
129 |
- mbdyn-module-dot |
130 |
- mbdyn-module-drive-test |
131 |
- mbdyn-module-drive |
132 |
- mbdyn-module-dummy |
133 |
- mbdyn-module-eu2phi |
134 |
- mbdyn-module-fab-electric |
135 |
- mbdyn-module-fab-motion |
136 |
- mbdyn-module-fab-sbearings |
137 |
- mbdyn-module-fabricate |
138 |
- mbdyn-module-flightgear |
139 |
- mbdyn-module-friction |
140 |
- mbdyn-module-friction3 |
141 |
- mbdyn-module-hfelem |
142 |
- mbdyn-module-hid |
143 |
- mbdyn-module-hunt-crossley |
144 |
- mbdyn-module-hydrodynamic_plain_bearing |
145 |
- mbdyn-module-hydrodynamic_plain_bearing2 |
146 |
- mbdyn-module-imu |
147 |
- mbdyn-module-indvel |
148 |
- mbdyn-module-inline_friction |
149 |
- mbdyn-module-inplane_friction |
150 |
- mbdyn-module-journal_bearing |
151 |
- mbdyn-module-leapmotion |
152 |
- mbdyn-module-loadinc |
153 |
- mbdyn-module-marble |
154 |
- mbdyn-module-md |
155 |
- mbdyn-module-mds |
156 |
- mbdyn-module-minmaxdrive |
157 |
- mbdyn-module-multi_step_drive |
158 |
- mbdyn-module-muscles |
159 |
- mbdyn-module-namespace |
160 |
- mbdyn-module-nodedistdrive |
161 |
- mbdyn-module-nonsmooth-node |
162 |
- mbdyn-module-ns |
163 |
- mbdyn-module-octave |
164 |
- mbdyn-module-randdrive |
165 |
- mbdyn-module-rollercoaster |
166 |
- mbdyn-module-rotor-loose-coupling |
167 |
- mbdyn-module-scalarfunc |
168 |
- mbdyn-module-switch_drive |
169 |
- mbdyn-module-tclpgin |
170 |
- mbdyn-module-triangular_contact |
171 |
- mbdyn-module-udunits |
172 |
- mbdyn-module-uni_in_plane |
173 |
- mbdyn-module-wheel2 |
174 |
- mbdyn-module-wheel4 |
175 |
-" |
176 |
-IUSE="${IUSE_MBDYN_MODULE//_/-} ann arpack autodiff blender boost bullet chaco crypt |
177 |
+# FMU # needs fmi-library |
178 |
+# aerodyn # needs aerodyn |
179 |
+# cudatest # needs cuda |
180 |
+MBDYN_MODULE=( asynchronous_machine autodiff_test ballbearing_contact bullet |
181 |
+charm constlaw-f90 constlaw-f95 constlaw cont-contact controller convtest |
182 |
+cyclocopter damper-gandhi damper-graall damper-hydraulic damper diff dot |
183 |
+drive-test drive dummy eu2phi fab-electric fab-motion fab-sbearings fabricate |
184 |
+flightgear friction friction3 hfelem hid hunt-crossley |
185 |
+hydrodynamic_plain_bearing hydrodynamic_plain_bearing2 imu indvel |
186 |
+inline_friction inplane_friction journal_bearing leapmotion loadinc marble md |
187 |
+mds minmaxdrive multi_step_drive muscles namespace nodedistdrive nonsmooth-node |
188 |
+ns octave randdrive rollercoaster rotor-loose-coupling scalarfunc switch_drive |
189 |
+tclpgin triangular_contact udunits uni_in_plane wheel2 wheel4 ) |
190 |
+ |
191 |
+MBDYN_MODULE_REPLACED=( "${MBDYN_MODULE[@]//_/-}" ) |
192 |
+IUSE_MBDYN_MODULE="${MBDYN_MODULE_REPLACED[@]/#/mbdyn_module_}" |
193 |
+IUSE="${IUSE_MBDYN_MODULE} ann arpack autodiff blender boost bullet chaco crypt |
194 |
debug eig ginac jdqz +mbc metis mpi multithread-naive netcdf octave openblas pam |
195 |
pastix pmpi python qrupdate rt sasl schur sparse superlu tests threads udunits +y12" |
196 |
# taucs rtai |
197 |
@@ -105,7 +53,7 @@ RDEPEND=" |
198 |
crypt? ( virtual/libcrypt ) |
199 |
ginac? ( sci-mathematics/ginac ) |
200 |
jdqz? ( sci-libs/jdqz ) |
201 |
- mbdyn-module-damper? ( sci-libs/gsl ) |
202 |
+ mbdyn_module_damper? ( sci-libs/gsl ) |
203 |
mpi? ( virtual/mpi[cxx] ) |
204 |
metis? ( sci-libs/metis ) |
205 |
netcdf? ( sci-libs/netcdf-cxx:* ) |
206 |
@@ -140,10 +88,10 @@ PATCHES=( |
207 |
) |
208 |
# "${FILESDIR}/${PN}-respect-libtool.patch" |
209 |
REQUIRED_USE=" |
210 |
- mbdyn-module-bullet? ( bullet ) |
211 |
- mbdyn-module-octave? ( octave ) |
212 |
- mbdyn-module-udunits? ( udunits ) |
213 |
- mbdyn-module-wheel4? ( ginac ) |
214 |
+ mbdyn_module_bullet? ( bullet ) |
215 |
+ mbdyn_module_octave? ( octave ) |
216 |
+ mbdyn_module_udunits? ( udunits ) |
217 |
+ mbdyn_module_wheel4? ( ginac ) |
218 |
multithread-naive? ( threads ) |
219 |
pmpi? ( mpi ) |
220 |
python? ( ${PYTHON_REQUIRED_USE} ) |
221 |
@@ -245,14 +193,10 @@ src_configure() { |
222 |
myconf+=( "--without-mpi" ) |
223 |
fi |
224 |
|
225 |
- declare -A mbdynmodules |
226 |
- for m in ${IUSE_MBDYN_MODULE} ; do |
227 |
- mbdynmodules[${m//_/-}]="${m/mbdyn-module-/}" |
228 |
- done |
229 |
- |
230 |
local usemodules="" |
231 |
- for u in ${IUSE_MBDYN_MODULE//_/-} ; do |
232 |
- use ${u} && usemodules+=" ${mbdynmodules[${u}]}" |
233 |
+ for m in ${MBDYN_MODULE[@]} ; do |
234 |
+ u="${m//_/-}" |
235 |
+ use "mbdyn_module_${u}" && usemodules+=" ${m}" |
236 |
done |
237 |
|
238 |
# remove leading whitespace characters |
239 |
|
240 |
diff --git a/sci-physics/mbdyn/metadata.xml b/sci-physics/mbdyn/metadata.xml |
241 |
index 8896f30ef..6556940ae 100644 |
242 |
--- a/sci-physics/mbdyn/metadata.xml |
243 |
+++ b/sci-physics/mbdyn/metadata.xml |
244 |
@@ -21,72 +21,6 @@ |
245 |
<flag name="ginac">With <pkg>sci-mathematics/ginac</pkg> support</flag> |
246 |
<flag name="jdqz">With <pkg>sci-libs/jdqz</pkg> math library</flag> |
247 |
<flag name="mbc">Enable MBC - multibody communication library</flag> |
248 |
- <!--<flag name="mbdyn-module-FMU">This is a module to import and cosimulation of FMUs, developed using FMI standards, for MBDyn</flag>--> |
249 |
- <!--<flag name="mbdyn-module-aerodyn">This is MBDyn's module for the wind-turbine aerodynamics library AeroDyn</flag>--> |
250 |
- <flag name="mbdyn-module-asynchronous-machine">The purpose of this code is the simulation of an asynchronous electrical machine as a part of a multibody model</flag> |
251 |
- <flag name="mbdyn-module-autodiff-test">This element implements a inline joint with friction</flag> |
252 |
- <flag name="mbdyn-module-ballbearing-contact">ball bearing contact</flag> |
253 |
- <flag name="mbdyn-module-bullet"><pkg>sci-physics/bullet</pkg> module</flag> |
254 |
- <flag name="mbdyn-module-charm">This module implements a user-defined induced velocity element based on CDI's CHARM free wake</flag> |
255 |
- <flag name="mbdyn-module-constlaw-f90">This directory contains an example of run-time loadable constitutive law written in Fortran 90</flag> |
256 |
- <flag name="mbdyn-module-constlaw-f95">This directory contains an example of run-time loadable constitutive law written in Fortran 95</flag> |
257 |
- <flag name="mbdyn-module-constlaw">This directory contains an example of run-time loadable constitutive law</flag> |
258 |
- <flag name="mbdyn-module-cont-contact">continuous contact</flag> |
259 |
- <flag name="mbdyn-module-controller">controller module</flag> |
260 |
- <flag name="mbdyn-module-convtest">convergence test module</flag> |
261 |
- <!--<flag name="mbdyn-module-cudatest"></flag>--> |
262 |
- <flag name="mbdyn-module-cyclocopter">This module implements induced velocity models for cycloidal rotors</flag> |
263 |
- <flag name="mbdyn-module-damper-gandhi">Gandhi, F. and Chopra, I., "An analytical model for a nonlinear elastomeric lag damper and its effect on aeromechanical stability in hover" Journal of the American Helicopter Society, Vol. 39, 1994, pp. 59-69.</flag> |
264 |
- <flag name="mbdyn-module-damper-graall">GRAALL Damper Constitutive Law</flag> |
265 |
- <flag name="mbdyn-module-damper-hydraulic">Hydraulic Damper Constitutive Law</flag> |
266 |
- <flag name="mbdyn-module-damper">It implements a 1D constitutive law based on a generic nonlinear rheological formula, whose coefficients are computed by means of parameter identification from experimental measurements</flag> |
267 |
- <flag name="mbdyn-module-diff">diff drive module</flag> |
268 |
- <flag name="mbdyn-module-dot">dot language module</flag> |
269 |
- <flag name="mbdyn-module-drive-test">drive test module</flag> |
270 |
- <flag name="mbdyn-module-drive">example of run-time loadable drive</flag> |
271 |
- <flag name="mbdyn-module-dummy">Dummy module --- does nothing, used to test the infrastructure</flag> |
272 |
- <flag name="mbdyn-module-eu2phi">converts three Euler angles into the corresponding Euler vector</flag> |
273 |
- <flag name="mbdyn-module-fab-electric">Library of electric components for "digital fabrication" machines</flag> |
274 |
- <flag name="mbdyn-module-fab-motion">Library of motion transmission components for "digital fabrication" machines</flag> |
275 |
- <flag name="mbdyn-module-fab-sbearings">Library of bearings for "digital fabrication" machines</flag> |
276 |
- <flag name="mbdyn-module-fabricate">Library of components of "digital fabrication" machines</flag> |
277 |
- <flag name="mbdyn-module-flightgear">flightgear module</flag> |
278 |
- <flag name="mbdyn-module-friction">eXperimental friction model</flag> |
279 |
- <flag name="mbdyn-module-friction3">eXperimental friction model (2nd try)</flag> |
280 |
- <flag name="mbdyn-module-hfelem">Harmonic Excitation Element</flag> |
281 |
- <flag name="mbdyn-module-hid">This module registers a file driver that captures the input from HID USB devices (only tested with some joysticks)</flag> |
282 |
- <flag name="mbdyn-module-hunt-crossley">HuntCrossley constitutive law</flag> |
283 |
- <flag name="mbdyn-module-hydrodynamic-plain-bearing">This module implements a hydrodynamic plain bearing according to Hans Juergen Butenschoen 1976 Das hydrodynamische zylindrische Gleitlager endlicher Breite unter instationaerer Belastung</flag> |
284 |
- <flag name="mbdyn-module-hydrodynamic-plain-bearing2">module hydrodynamic plain bearing2</flag> |
285 |
- <flag name="mbdyn-module-imu">implements two uses of a IMU</flag> |
286 |
- <flag name="mbdyn-module-indvel">This module implements a dummy induced velocity model</flag> |
287 |
- <flag name="mbdyn-module-inline-friction">This element implements a inline joint with friction</flag> |
288 |
- <flag name="mbdyn-module-inplane-friction">In plane friction</flag> |
289 |
- <flag name="mbdyn-module-journal-bearing">This element implements a journal bearing with lugre friction</flag> |
290 |
- <flag name="mbdyn-module-leapmotion">leapmotion hand</flag> |
291 |
- <flag name="mbdyn-module-loadinc">load increment normalization</flag> |
292 |
- <flag name="mbdyn-module-marble">marble model for icecube robot</flag> |
293 |
- <flag name="mbdyn-module-md">MD module</flag> |
294 |
- <flag name="mbdyn-module-mds">mds module</flag> |
295 |
- <flag name="mbdyn-module-minmaxdrive">minmaxdrive module</flag> |
296 |
- <flag name="mbdyn-module-multi-step-drive">multi step drive module</flag> |
297 |
- <flag name="mbdyn-module-muscles">muscle module</flag> |
298 |
- <flag name="mbdyn-module-namespace">namespace module</flag> |
299 |
- <flag name="mbdyn-module-nodedistdrive">node dist drive module</flag> |
300 |
- <flag name="mbdyn-module-nonsmooth-node">Defines a unilateral constraint in form of a contact between a node and one or more planes, optionally with friction</flag> |
301 |
- <flag name="mbdyn-module-ns">ns1 module</flag> |
302 |
- <flag name="mbdyn-module-octave">octave module</flag> |
303 |
- <flag name="mbdyn-module-randdrive">rand drive module</flag> |
304 |
- <flag name="mbdyn-module-rollercoaster">rollercoaster module</flag> |
305 |
- <flag name="mbdyn-module-rotor-loose-coupling">rotor loose coupling</flag> |
306 |
- <flag name="mbdyn-module-scalarfunc">example of run-time loadable scalar function</flag> |
307 |
- <flag name="mbdyn-module-switch-drive">switch drive module</flag> |
308 |
- <flag name="mbdyn-module-tclpgin">tcl plugin</flag> |
309 |
- <flag name="mbdyn-module-triangular-contact">This element implements unilateral contact with friction between an arbitrary rigid body, represented by a triangular mesh, and a set of nodes with arbitrary offsets</flag> |
310 |
- <flag name="mbdyn-module-udunits">This module adds a namespace "units" with the only function "convert", which is thus invoked as "units::convert"</flag> |
311 |
- <flag name="mbdyn-module-uni-in-plane">This element implements the unilateral contact between a point and a plane</flag> |
312 |
- <flag name="mbdyn-module-wheel2">Connects 2 structural nodes: Wheel Ground</flag> |
313 |
- <flag name="mbdyn-module-wheel4">L. Gagnon, M. J. Richard, P. Masarati, M. Morandini, and G. Dore. Multibody simulation of tires operating on an uneven road. In Multibody Dynamics 2011, 4-7 July 2011</flag> |
314 |
<flag name="metis">With <pkg>sci-libs/metis</pkg> model partitioning support</flag> |
315 |
<flag name="mpi">With MPI support</flag> |
316 |
<flag name="multithread-naive">Enable multithread naive solver</flag> |