Skip to content

Conversation

@DisasterMo
Copy link

Changed how input parameters for these functions are handled.
Implemented a (rather naive) way to limit admissible x values (needs more work).
Documented changes in the manual.

rquey added 30 commits July 26, 2018 10:38
Moved code to net_domain2.c.
Moved code to net_domain2.c.
Moved code to net_domain2.c.
Moved code to net_domain2.c.
Moved code to net_domain2.c.
Moved code to net_domain2.c.
Simple clean up.
The contrib directory now includes full versions of the libraries
insteads of versions adapted to the code.  This was made possible by
improving the CMakeLists.txt files.
Simple clean up.
Added multithreading in nem_transport_elt_oldelt.
When a face is copied (cannot be remeshed), an error was generated
straight away, although it should be enabled.  Now fixed.
It is now possible to specify a direction of space as lamellar
direction.
Argument pos can be used to set the lamella reference position.  It can
be "random", which corresponds to a random position, or "start", which
corresponds to the first lamella starting (full-width) at the start
point of the domain (along the lamella direction).
It is now possible to set the number of cells automatically in the case
where the diameq (or size) is set by value.
It is now possible to use -morpho "file()" in the case of a multiscale
tessellation.  An example is:

$ more morpho_file

1 size:0.1
2 size:0.01

$ neper -T -n 2::2 -morpho "lamellar(w=0.5,v=(1,0,0),pos=start)::file(morpho_file)"
Added debugging information.
The new key 'w' is the weight of the seed associated to a cell.
Made spaces after item bullets unstretchable.
Cells of a tessellations can now be merged using "-transform
mergecell(expr1,expr2,...)" where expressions select cells.  An example
is:

$ neper -T -n 100 -transform "mergecell(z>0.5)"
When cells are merged, it is now made sure that no coplanar faces nor
colinear edges remain, which occurred in the case of multiscale
tessellations.

Here is an example:

$ more morpho
lamellar(v=(1,0,0),w=0.5,pos=start)
1 lamellar(v=(0,1,0),w=0.5,pos=start)
2 lamellar(v=(0,0,1),w=0.5,pos=start)

$ neper -T -n from_morpho::2 -o d -morpho "file(morpho)::file(morpho)" -transform "mergecell(id>=3)"
Generalized neut_tess_merge_polyfaces to domain faces, so that
neut_tess_merge_ondomain becomes unnecessary.  Cleaned up code
accordingly.
While merging cells, the edge and vertex lists are now properly ordered
wrt the face normal.
Non-convex faces are now properly printed, by decomposing them into a
proper set of triangles.
Cells of a tessellations can now be removed using "-transform
rmcell(expr1,expr2,...)" where expressions select cells.  An example
is:

$ neper -T -n 100 -transform "rmcell(z>0.5)"
The option sets TESS.CellId to a contiguous sequence starting from 1.
The options now takes standard mathematical (or logical) expressions an
input.
Removed fix-size arrays using reallocs.
rquey and others added 22 commits September 26, 2018 14:44
Renamed option into -mesh3dclreps.  It is now also possible to pass a
mathematical expression to the option.
Fixed loop countings and related termination criterion.
The title says it all.
Poly.FacePoly is not reset anymore, as its values are useful for
net_tess_clip, for example.  Resetting was moved to net_tess3d, where it
is needed.
It is now possible to write separate STL files for the cells,
using -format stl:bycell.
This option cuts a tessellation by a plane.  It works for singlescale
and multiscale tessellations.

An example is
$ neper -T -n 100 -transform "planecut(1.1,1,1,1)"
Made clear whether transformations are available for scalar and/or
raster tessellations.
Simple fix.
Option -cl (or -rcl) can now take mathematical expressions for (2D)
raster tessellations just as for tessellations.

Here is an example:
$ neper -T -n 10 -dim 2 -for tesr
$ neper -M n10-id1.tesr -cl "(id<=5)?0.1:0.01"
The title says it all.
- Fixed VERSIONS file.
- Fixed version number.
Simple fix.
The title says it all.
When meshing a tesr (with is allowed with -elt hex), the characteristic
length of the elements is now properly computed.
The title says it all.
Master nodes were erroneous in the .per file, because they were refering
to the local mesh (of the face) instead of the global mesh.  Now fixed.
In the case where a multiscale tessellation is meshed, option -interface
can now take a different value for each scale.

Here is the description as per the doc:

-- Secondary option: -interface _char_string_
    Specify the type of interface meshing.  Provide 'continuous' for a
    continuous mesh at interfaces, with shared nodes between neighbour
    element sets (which are associated to the tessellation cells).
    Provide 'discontinuous' for a discontinuous mesh at interfaces,
    with distinct nodes for the neighbour element sets.  Provide
    'cohesive' for cohesive elements at interfaces, joining the
    neigbour element sets.  In the case of a multiscale tessellation,
    it is possible to provide a different value for each scale using
    the '::' separator (if fewer values than tessellation scales are
    provided, the last provided value is used for all higher scales).
    See option '-faset' for the output format.
    Possible values: 'see above'.  Default value: 'continuous'.

Here is an example that creates cohesive elements at the interfaces
of the first scale only:

$ neper -T -n 2::2 -o test
$ neper -M test.tess -interface cohesive::continuous
Changed how input parameters for these functions are handled.
Implemented a (rather naive) way to limit admissible x values (needs more work).
Documented changes in the manual.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants