sfepy.discrete.iga.domain_generators module¶
IGA domain generators.
-
sfepy.discrete.iga.domain_generators.
create_from_igakit
(inurbs, verbose=False)[source]¶ Create
IGDomain
data from a given igakit NURBS object.Parameters: inurbs : igakit.nurbs.NURBS instance
The igakit NURBS object.
Returns: nurbs : NurbsPatch instance
The NURBS data. The igakit NURBS object is stored as nurbs attribute.
bmesh : Struct instance
The Bezier mesh data.
regions : dict
The patch surface regions.
-
sfepy.discrete.iga.domain_generators.
gen_patch_block_domain
(dims, shape, centre, degrees, continuity=None, cp_mode='greville', name='block', verbose=True)[source]¶ Generate a single IGA patch block in 2D or 3D of given degrees and continuity using igakit.
Parameters: dims : array of D floats
Dimensions of the block.
shape : array of D ints
Numbers of unique knot values along each axis.
centre : array of D floats
Centre of the block.
degrees : array of D floats
NURBS degrees along each axis.
continuity : array of D ints, optional
NURBS continuity along each axis. If None, degrees-1 is used.
cp_mode : ‘greville’ or ‘uniform’
The control points mode. The default ‘greville’ results in a uniform Bezier mesh, while the ‘uniform’ mode results in a uniform grid of control points a finer Bezier mesh inside the block and a coarser Bezier mesh near the block boundary.
name : string
Domain name.
verbose : bool
If True, report progress of the domain generation.
Returns: nurbs : NurbsPatch instance
The NURBS data. The igakit NURBS object is stored as nurbs attribute.
bmesh : Struct instance
The Bezier mesh data.
regions : dict
The patch surface regions.