Skip to content

Commit 4fd7184

Browse files
committed
Add new capabilities.
- module -T: added tessellation cutting (to get non-convex domains) using -transform cut, added cell merging and removal using -transform mergecell and rmcell, added -transform resetcellid, added -ori spread, improved -morpho lamellar, improved -morpho diameq, added -format stl:bycell, added tessellation keys, fixed -morpho aspratio and rasterization of periodic tessellations, fixed -domain circle:split, made small fixes and improvements. - module -M: made -interface mutliscale, renamed -mesh3dclconv into -mesh3dclreps, improved -cl, -rcl and -mesh3dclreps argument expressions, speed up -transport, fixed 2D remeshing, speed up -statelt and -statelset, added -[r]clface, -[r]cledge and -[r]clver. - module -V: improved visualization of non-convex cells, fixed visualization of hex meshes, minor other fixes.
1 parent d6a0d60 commit 4fd7184

File tree

1,022 files changed

+14584
-4956
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,022 files changed

+14584
-4956
lines changed

VERSIONS

Lines changed: 27 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,32 @@
1+
New in 3.4.0 (15 Apr 2019):
2+
- module -T: added tessellation cutting (to get non-convex domains) using
3+
-transform cut, added cell merging and removal using -transform mergecell and
4+
rmcell, added -transform resetcellid, added -ori spread, improved -morpho
5+
lamellar, improved -morpho diameq, added -format stl:bycell, added
6+
tessellation keys, fixed -morpho aspratio and rasterization of periodic
7+
tessellations, fixed -domain circle:split, made small fixes and improvements.
8+
- module -M: made -interface mutliscale, renamed -mesh3dclconv into
9+
-mesh3dclreps, improved -cl, -rcl and -mesh3dclreps argument expressions,
10+
speed up -transport, fixed 2D remeshing, speed up -statelt and -statelset,
11+
added -[r]clface, -[r]cledge and -[r]clver.
12+
- module -V: improved visualization of non-convex cells, fixed visualization of
13+
hex meshes, minor other fixes.
14+
115
New in 3.3.0 (25 Jul 2018):
2-
- New paper: "R. Quey, A. Villani, and C. Maurice. Nearly uniform sampling of
3-
crystal orientations. J. Appl. Crystallogr., vol. 51,
16+
- New paper: "R. Quey, A. Villani, and C. Maurice. Nearly uniform
17+
sampling of crystal orientations. J. Appl. Crystallogr., vol. 51,
418
doi:10.1107/S1600576718009019, 2018."
5-
- module -T: added -ori uniform for uniform orientation distribution, added
6-
sistem options -orioptiini -orioptifix, -orioptistop and -orioptineigh,
7-
-added -morpho tocta, columnar, bamboo and aspratio, fixed -morpho
8-
multimodal, improved -morphooptiini, added -transform translate, fixed tesr
9-
output for periodic tessellations, fixed tess to tesr conversion, added
10-
several tessellation keys, merged option -scale into -transform, made minor
11-
improvements.
12-
- module -M: fixed meshing of periodic tessellation with openMP, allowed Gmsh
13-
development versions.
14-
- module -V: improved camera parameters, fixed -slicemesh for hex meshes.
19+
- module -T: added -ori uniform for uniform orientation distribution,
20+
added sister options -orioptiini, -orioptifix, -orioptistop and
21+
-orioptineigh, added -morpho tocta, columnar, bamboo and aspratio,
22+
fixed -morpho multimodal, improved -morphooptiini, added -transform
23+
translate, fixed tesr output for periodic tessellations, fixed tess to
24+
tesr conversion, added several tessellation keys, merged option -scale
25+
into -transform, made minor improvements.
26+
- module -M: fixed meshing of periodic tessellation with openMP, allowed
27+
Gmsh development versions.
28+
- module -V: improved camera parameters, fixed -slicemesh for hex
29+
meshes.
1530

1631
New in 3.2.0 (23 May 2018):
1732
- general: Neper is now fully multithreaded.

doc/texinfo/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# This file is part of the Neper software package.
2-
# Copyright (C) 2003-2018 Romain Quey
2+
# Copyright (C) 2003-2019 Romain Quey
33
# See the COPYING file in the top-level directory.
44

55
pdf:

doc/texinfo/copying.texi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
@c This file is part of the Neper software package.
2-
@c Copyright (C) 2003-2018 Romain Quey
2+
@c Copyright (C) 2003-2019 Romain Quey
33
@c See the COPYING file in the top-level directory.
44

55
@node Conditions of Use
@@ -89,6 +89,6 @@ diffraction data, Comput.@ Methods Appl.@ Mech.@ Engrg., vol.@ 330, pp.@
8989
308-333, 2018}
9090
(for tessellation from experimental properties with option @option{-morpho});
9191
@item @cite{R.@ Quey, A.@ Villani and C.@ Maurice, Nearly uniform sampling
92-
of crystal orientations, J.@ Appl.@ Crystallogr., vol.@ 51, https://doi.org/10.1107/S1600576718009019}
92+
of crystal orientations, J.@ Appl.@ Crystallogr., vol. 51, pp.@ 1162-1173, 2018.}''
9393
(for uniform crystal orientation distribution with option @option{-ori uniform}).
9494
@end itemize

doc/texinfo/develguide.texi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
@c This file is part of the Neper software package.
2-
@c Copyright (C) 2003-2018 Romain Quey
2+
@c Copyright (C) 2003-2019 Romain Quey
33
@c See the COPYING file in the top-level directory.
44

55
@node Developer's Guide

doc/texinfo/exprskeys.texi

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
@c This file is part of the Neper software package.
2-
@c Copyright (C) 2003-2018 Romain Quey
2+
@c Copyright (C) 2003-2019 Romain Quey
33
@c See the COPYING file in the top-level directory.
44

55
@node Expressions and Keys
@@ -123,12 +123,15 @@ the @samp{@SEPDEP{}uc} modifier. To use as a reference only the
123123
@item @code{xmax} @tab maximum x coordinate @tab edge, face, poly
124124
@item @code{ymax} @tab maximum y coordinate @tab edge, face, poly
125125
@item @code{zmax} @tab maximum z coordinate @tab edge, face, poly
126-
@item @code{w} @tab weight (width for a lamella tessellation) @tab seed
126+
@item @code{w} @tab weight (width for a lamella tessellation) @tab seed, cell
127127
@item @code{true} @tab true level @tab ver, edge, face, poly
128128
@item @code{body} @tab body level @tab ver, edge, face, poly
129129
@item @code{state} @tab state @tab ver, edge, face, poly
130130
@item @code{domtype} @tab type of domain (0 if on a domain vertex, 1
131131
if on a domain edge and 2 if on a domain face) @tab ver, edge, face
132+
@item @code{domface} @tab domain face (-1 if undefined) @tab face
133+
@item @code{domedge} @tab domain edge (-1 if undefined) @tab edge
134+
@item @code{domver} @tab domain vertex (-1 if undefined) @tab ver
132135
@item @code{scale} @tab scale @tab face@footnote{Applies only to a 3D tessellation and relevant for multiscale tessellations. The scale of a face is the scale at which the face was created, and it ranges from 0 (for domain faces) to the number of scales of the tessellation (for the last created faces).}
133136
@item @code{length} @tab length @tab edge
134137
@item @code{area} @tab area @tab face, poly
@@ -426,6 +429,9 @@ dimensions) and points are provided below.
426429
@item @code{vol} @tab volume @tab 3D elt, 3D elset
427430
@item @code{area} @tab area @tab 2D elt
428431
@item @code{length} @tab length @tab 1D elt, 3D elt, 1D elset
432+
@item @code{elsetvol} @tab elset volume @tab 3D elt
433+
@item @code{elsetarea} @tab elset area @tab 2D elt
434+
@item @code{elsetlength} @tab elset length @tab 1D elt
429435
@item @code{rr} @tab radius ratio @tab 3D elt
430436
@item @code{rrav}, @code{rrmin}, @code{rrmax}
431437
@tab average, min and max radius ratios @tab 3D elset

doc/texinfo/fileformat.texi

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
@c This file is part of the Neper software package.
2-
@c Copyright (C) 2003-2018 Romain Quey
2+
@c Copyright (C) 2003-2019 Romain Quey
33
@c See the COPYING file in the top-level directory.
44

55
@node File Formats
@@ -78,7 +78,8 @@ and
7878
@ @ @ ... @*
7979
@ @ *edge @*
8080
@ @ @ @var{total_number_of_dom_edges} @*
81-
@ @ @ @var{dom_edge_id} @var{dom_ver_1} @var{dom_ver_2} @var{dom_edge_label} @*
81+
@ @ @ @var{dom_edge_id} @var{number_of_dom_vertices} [@var{dom_ver_1} @var{dom_ver_2}] @*
82+
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @var{dom_edge_label} @*
8283
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @var{number_of_dom_tess_edges} @var{edge_1}
8384
@var{edge_2} ...@*
8485
@ @ @ ... @*
@@ -87,8 +88,8 @@ and
8788
@ @ @ @var{dom_face_id} @var{number_of_dom_vertices} @var{dom_ver_1} @ @var{dom_ver_2} @ @var{...} @*
8889
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @var{number_of_dom_edges} @ @ @ @var{dom_edge_1} @var{dom_edge_2}
8990
@var{...} @*
90-
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @var{dom_face_eq_d} @var{dom_face_eq_a}
91-
@var{dom_face_eq_b} @var{dom_face_eq_c} @*
91+
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @var{dom_face_type} @*
92+
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @var{number_of_params} @var{dom_face_param1} @var{dom_face_param2} @var{...} @*
9293
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @var{dom_face_label} @*
9394
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @var{number_of_dom_tess_faces}
9495
@var{dom_tess_face_1} @var{dom_tess_face_2} @var{...} @*
@@ -307,6 +308,9 @@ domain edges.
307308
@item @code{@var{dom_edge_id}} is the identifier of a domain edge and
308309
ranges between @code{1} to @code{total_number_of_dom_edges}.
309310

311+
@item @code{@var{number_of_dom_vertices}} is the number of
312+
domain vertices of a domain edge or a domain face.
313+
310314
@item @code{@var{dom_ver_1}}, @code{@var{dom_ver_2}}, @code{...} are
311315
identifiers of the domain vertices of a domain edge or face.
312316

@@ -324,19 +328,26 @@ domain faces.
324328
@item @code{@var{dom_face_id}} is the identifier of a domain face and ranges from
325329
@code{1} to @code{total_number_of_dom_faces}.
326330

327-
@item @code{@var{number_of_dom_vertices}} is the number of
328-
domain vertices of a domain face.
329-
330331
@item @code{@var{number_of_dom_edges}} is the number of
331332
domain edges of a domain face.
332333

333334
@item @code{@var{dom_edge_1}}, @code{@var{dom_edge_2}}, @code{...} are
334335
identifiers of the domain edges of a domain face.
335336

336-
@item @code{@var{dom_face_eq_a}}, @code{@var{dom_face_eq_b}},
337-
@code{@var{dom_face_eq_c}} and @code{@var{dom_face_eq_d}} are the
338-
parameters of the equation of a domain face and are defined in the same
339-
way than @code{@var{face_eq_a}}, etc.@ (see above).
337+
@item @code{@var{dom_face_type}} is the type of a face, among
338+
@samp{@code{plane}}, @samp{@code{cylinder}} or @samp{@code{sphere}}.
339+
340+
@item @code{@var{number_of_params}} is the number of parameters of a domain
341+
face.
342+
343+
@item @code{@var{dom_face_param1}}, @code{@var{dom_face_param2}}, @code{...}
344+
are the parameters of a domain face. For a planar face, they are the parameters
345+
of the equation of the face, listed in the order
346+
@code{@var{face_eq_d}}, @code{@var{face_eq_a}}, @code{face_eq_b} and
347+
@code{@var{face_eq_c}}.
348+
For a cylindrical face, they are the coordinates of the base point,
349+
the axis and the radius.
350+
For a spherical face, they are the coordinates of the centre and the radius.
340351

341352
@item @code{@var{dom_face_label}} is the label of a domain face. If
342353
@var{@code{dom_type}} is @samp{@code{cube}}, it is one of

doc/texinfo/introduction.texi

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
@c This file is part of the Neper software package.
2-
@c Copyright (C) 2003-2018 Romain Quey
2+
@c Copyright (C) 2003-2019 Romain Quey
33
@c See the COPYING file in the top-level directory.
44

55
@node Introduction
@@ -32,7 +32,7 @@ Several, complementary resources describing Neper are available:
3232

3333
@item The Neper GitHub repository, @url{http://github.com/rquey/neper}, is the page for development. It is also where Neper's latest, development version can be downloaded from.
3434

35-
@item The 3 Neper reference papers,
35+
@item The three Neper reference papers,
3636
@itemize
3737
@item ``@cite{R.@ Quey, P.R.@ Dawson and F.@ Barbe, Large-scale 3D random
3838
polycrystals for the finite element method: Generation, meshing and
@@ -46,9 +46,8 @@ Several, complementary resources describing Neper are available:
4646
diffraction data, Comput.@ Methods Appl.@ Mech.@ Engrg., vol.@ 330, pp.@
4747
308-333, 2018}'' describes tessellation generation from experimental properties;
4848
@item ``@cite{R.@ Quey, A.@ Villani and C.@ Maurice, Nearly uniform sampling
49-
of crystal orientations, J.@ Appl.@ Crystallogr., vol. 51,
50-
https://doi.org/10.1107/S1600576718009019}'' describes uniform sampling of
51-
crystal orientations.
49+
of crystal orientations, J.@ Appl.@ Crystallogr., vol. 51, pp.@ 1162-1173, 2018.}''
50+
describes uniform sampling of crystal orientations.
5251
@end itemize
5352
@end itemize
5453

@@ -90,15 +89,15 @@ Several of Neper's dependencies can be managed at this stage. Some of them are
9089

9190
@itemize
9291

93-
@item The GNU Scientific Library (GSL, mandatory, enabled by default). It is likely to be available on your system or from your system package manager (binary and development packages); alternatively, the source code version can be downloaded from @uref{http://www.gnu.org/software/gsl}.
92+
@item The GNU Scientific Library (GSL, mandatory). It is likely to be available on your system or from your system package manager (binary and development packages); alternatively, the source code version can be downloaded from @uref{http://www.gnu.org/software/gsl}.
9493

9594
@item The NLopt library (optional, enabled by default). It is needed by @mT{} for tessellation generation from cell properties. It is likely to be available on your system or from your system package manager (binary and development packages); alternatively, the source code version can be downloaded from @uref{http://ab-initio.mit.edu/wiki/index.php/NLopt}.
9695

9796
@item The OpenMP library (optional, enabled by default). It is likely to be available on your system or from your system package manager.
9897

9998
@item The libScotch library (version @code{5.1.12} or higher, optional, disabled by default). It is needed by @mM{} for mesh partitioning. The source code can be downloaded from @url{www.labri.fr/perso/pelegrin/scotch}.
10099

101-
@item The pthread library (optional, disabled by default). It is needed if libScotch version @code{6.0.0} or higher is enabled. It is likely to be available on your system or from your system package manager.
100+
@item The pthread library (optional, enabled if libScotch enabled). It is needed if libScotch version @code{6.0.0} or higher is enabled. It is likely to be available on your system or from your system package manager.
102101

103102
@end itemize
104103

@@ -164,7 +163,7 @@ Some options may take several argument values. These values can be combined usi
164163

165164
@item The @samp{@SEPDEP} separator is used to combine correlated arguments, i.e.@ arguments of different types, which cannot be processed independently from each other. Such arguments can be values of a variable in different directions, for instance.
166165

167-
@item The @samp{::} separator is used in @mT{} for assigning argument values to the different scales of a multiscale tessellation. It is a ``super-separator'' that takes precedence over the @samp{@SEPNODEP} and @samp{@SEPDEP} standard separators.
166+
@item The @samp{::} separator is used in @mT{} (and a little in @mM{}) for assigning argument values to the different scales of a multiscale tessellation. It is a ``super-separator'' that takes precedence over the @samp{@SEPNODEP} and @samp{@SEPDEP} standard separators.
168167

169168
@end itemize
170169

doc/texinfo/neper.texi

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
\input texinfo.tex
22
@c This file is part of the Neper software package.
3-
@c Copyright (C) 2003-2018 Romain Quey
3+
@c Copyright (C) 2003-2019 Romain Quey
44
@c See the COPYING file in the top-level directory.
55

66
@afourpaper
@@ -12,7 +12,7 @@
1212
@c %**start of header
1313
@setfilename neper.info
1414
@include version.texi
15-
@set COPYRIGHT @copyright{} 2003--2018 Romain Quey
15+
@set COPYRIGHT @copyright{} 2003--2019 Romain Quey
1616
@c
1717
@settitle Neper @value{NEPER_VERSION}
1818
@footnotestyle separate
@@ -152,6 +152,10 @@ Neper
152152
::
153153
@end macro
154154

155+
@macro mybullet
156+
@math{@bullet{}}@w{ }
157+
@end macro
158+
155159
@c COM
156160
@macro com{a}
157161
@iftex
@@ -229,6 +233,16 @@ Possible values: @code{\c\}. Default value: @code{\d\}.
229233
@end deftypefn
230234
@end macro
231235

236+
@c OPTTWOSEC
237+
@macro opttwosec{f, g, a, e, b, c, d }
238+
@kindex \f\
239+
@kindex \g\
240+
@deftypefn {Secondary Option} @t{\a\} @emph{\e\}
241+
\b\@*
242+
Possible values: @code{\c\}. Default value: @code{\d\}.
243+
@end deftypefn
244+
@end macro
245+
232246
@c SOPT
233247
@macro optsec{a, e, b, c, d }
234248
@kindex \a\

0 commit comments

Comments
 (0)