Mechanics#

class felupe.SolidBody(umat, field, statevars=None)[source]#

Bases: object

A SolidBody with methods for the assembly of sparse vectors/matrices.

class felupe.SolidBodyNearlyIncompressible(umat, field, bulk, state=None, statevars=None)[source]#

Bases: object

A (nearly) incompressible SolidBody with methods for the assembly of sparse vectors/matrices based on a MaterialTensor with state variables.

The volumetric material behaviour is defined by a strain energy function.

\[U(J) = \frac{K}{2} (J - 1)^2\]
class felupe.StateNearlyIncompressible(field)[source]#

Bases: object

A State with internal fields for (nearly) incompressible solid bodies.

h(parallel=False)[source]#

Integrated shape-function gradient w.r.t. the deformed coordinates x.

v()[source]#

Cell volumes of the deformed configuration.

class felupe.SolidBodyGravity(field, gravity, density)[source]#

Bases: object

A SolidBody with methods for the assembly of sparse vectors/matrices.

update(gravity)[source]#
class felupe.SolidBodyPressure(field, pressure=None)[source]#

Bases: object

A hydrostatic pressure boundary on a SolidBody.

update(pressure)[source]#
class felupe.PointLoad(field, points, values=None, apply_on=0, axisymmetric=False)[source]#

Bases: object

A point load with methods for the assembly of sparse vectors/matrices.

update(values)[source]#
class felupe.Step(items, ramp=None, boundaries=None)[source]#

Bases: object

A Step with multiple substeps, subsequently depending on the solution of the previous substep.

generate(**kwargs)[source]#

Generate all substeps.

class felupe.Job(steps, callback=<function Job.<lambda>>, filename=None)[source]#

Bases: object

A job with a list of steps.

evaluate(filename=None, mesh=None, point_data=None, cell_data=None, point_data_default=True, cell_data_default=True, verbose=True, **kwargs)[source]#
class felupe.CharacteristicCurve(steps, boundary, items=None, callback=<function CharacteristicCurve.<lambda>>)[source]#

Bases: Job

plot(x=None, y=None, xaxis=0, yaxis=0, xlabel='x', ylabel='y', xscale=1, yscale=1, gradient=False, fig=None, ax=None, linestyle='.-', items=None, **kwargs)[source]#