Meshes

MMJMesh.Meshes.DataType
Data

Data makes it possible to associate data with mesh entities. This can happen on three levels:

  1. setdata!(m, :foo, 99) sets property :foo to 99 for all mesh entities

  2. setdata!(group(m, :bar), :foo, 99) sets property :foo for all mesh entities in group :bar to 99

  3. setdata!(node(m, 1), :foo, 99) sets property :foo for node 1 to 99

If a property is specified on two or more levels, the most specific level is selected.

source
MMJMesh.Meshes.GroupType
struct Group{T} <: AbstractVector{Int}

A set of indices of objects of type T. Requires a function index(o::T) -> Int in this module.

source
MMJMesh.Meshes.GroupCollectionType
struct GroupCollection

A collection of Groups each identified by a Symbol. Predefined groups are created by associating a Symbol with a recipe function. The recipe function is called when the group is first accessed. The recipe function either returns a Group object which is then cached or nothing in the case it manipulates the GroupCollection directly.

source
MMJMesh.Meshes.MeshType
Mesh(dt, dg [, nn=0, g1=GeometricObjectI, g2=GeometricObjectI])
Mesh(coordinates, dt [, g1=GeometricObjectI, g2=GeometricObjectI])
Mesh(coordinates, elements, dt [, g1=GeometricObjectI, g2=GeometricObjectI])

Mesh of parametric dimension dt embedded in dg dimensional space. Types g1 and g2 are default types for geometric objects of parametric dimension 1 and 2.

source
MMJMesh.Meshes.MeshEntityType
MeshEntity{DT,DG,NN,G}

Entity of a finite element mesh of parametric dimension DT embeded in DG dimensional space connected to NN nodes with a geometry of type G.

source
MMJMesh.Meshes._idvectorMethod
_idvector(values::AbstractVector) -> ids

Assigns an integer id to each unique entry in values and returns the ids vector such that ids[i] is the id of the i-th value. Larger values have a larger id such that the resulting ids array satisfies cmp(values[i], values[j]) == cmp(ids[i], ids[j]).

source
MMJMesh.Meshes._registergrouprecipiesMethod
_registergrouprecipies(m::Mesh)

Registers recipes to generate groups for boundary entities and entities of a certain parametric dimension. To be called once on Mesh creation.

source
MMJMesh.Meshes.definegroup!Method
definegroup!(m, dim, name, indices)

For mesh m, define group of dim-dimensional entities called name with entities indices.

source
MMJMesh.Meshes.groupnamesMethod
groupnames(m; d=-1, predefined=false)

Returns names of all non-empty groups in Mesh m of dimension d. If d is not specified, groups of all dimensions are included. If predefined is false, only user defined groups are considered.

source
MMJMesh.Meshes.groupnamesMethod
groupnames(e)

Names of groups entity e belongs to sorted by group size. That is, the most specific group is returned first.

source
MMJMesh.Meshes.onMethod
on(p::Point)
on(s::GeometricObjectP)

Generates a predicate which tests if an object is on the specified geometric object. To be used in conjunction with the entiy(m, dim, predicate) function.

source