sfepy.discrete.iga.domain module

Computational domain for isogeometric analysis.

class sfepy.discrete.iga.domain.IGDomain(name, nurbs, bmesh, regions=None, **kwargs)[source]

Bezier extraction based NURBS domain for isogeometric analysis.

static from_data(knots, degrees, cps, weights, cs, conn, bcps, bweights, bconn, regions, name='iga_domain_from_data')[source]

Create the IGA domain from the given data.

static from_file(filename)[source]
filenamestr

The name of the IGA domain file.

static read_domain_from_hdf5(fd, group)[source]

Create a domain from the given hdf5 data group.

fd: tables.File

HDF5 file handle to read the mesh from.

group: tables.group.Group

HDF5 data group (of file fd) to read the mesh from.

write_domain_to_hdf5(self, fd, group)[source]

Save the domain to a hdf5 file.

fd: tables.File

HDF5 file handle to write the mesh to.

group: tables.group.Group

HDF5 data group (of file fd) to write the mesh to.

class sfepy.discrete.iga.domain.NurbsPatch(knots, degrees, cps, weights, cs, conn)[source]

Single NURBS patch data.

elevate(self, times=0)[source]

Elevate the patch degrees several times by one.

Returns
nurbsNurbsPatch instance

Either self if times is zero, or a new instance.

evaluate(self, field, u=None, v=None, w=None)[source]

Igakit-like interface for NURBS evaluation.