OpenPisco.ExternalTools.FreeFem.FreeFemProblemWriter module#

FreefemProblemWriter

Following OpenPisco business logic for external tools such as Freefem++, we provide utilities suitable for the coupling with it. The responsability of the current module is simply to build a suitable .edp file that can be handled by the Freefem executable.

OpenPisco.ExternalTools.FreeFem.FreeFemProblemWriter.CheckIntegrity()[source]#
class OpenPisco.ExternalTools.FreeFem.FreeFemProblemWriter.FreeFemLSMetricComputationWriter(opts: dict)[source]#

Bases: FreeFemWriterBase

LSMetricComputation()[source]#

Compte level set metric

LSMetricComputation2d()[source]#

Compte level set metric in 2D

LSMetricComputation3d()[source]#

Compte level set metric in 3D

WriteFreeFemProblem()[source]#

Write freefem problem

class OpenPisco.ExternalTools.FreeFem.FreeFemProblemWriter.FreeFemStaticWriter(phyproblem=None)[source]#

Bases: FreeFemWriterBase

ElasticEnergy()[source]#

Define elastic energy computation

IntegralElasticEnergy()[source]#

Define integral elastic energy computation

ProblemStaticLHS(conform: bool = True)[source]#

Build left-hand side of problem

Parameters

conform (bool, optional) – conformal configuration or not, by default True (conformal)

ProblemStaticRHS()[source]#

Build right-hand side of problem

Stress()[source]#

Define stress computation

VonMises()[source]#

Define von mises computation

WriteAuxiliaryNodalFieldGeneration()[source]#

Write auxiliary noal field generation

WriteAuxiliaryScalarGeneration()[source]#

Write auxiliary scalar in file

Raises

NotImplementedError – Only Integral elastic energy available, raise exception if another one is asked

WriteFreefemProblem()[source]#

Write freefem problem

class OpenPisco.ExternalTools.FreeFem.FreeFemProblemWriter.FreeFemWriterBase[source]#

Bases: object

BodyForce()[source]#

Define body forces

DefineMaterials()[source]#

Define materials

DefineSpace(order=1)[source]#

Define finite element spaces

DefineStateVariables()[source]#

Define states variables

IncludeMacroScripts()[source]#

Include macro scripts (collection of utilities to be used at a higher level)

Levelset()[source]#

Describe space with levelset

LoadDisplacement()[source]#

Load displacements

LoadVectorField(fieldname: str)[source]#

Load vector field

Parameters

fieldname (str) – field name

Loading()[source]#

Define loading

SetFileName(filename: str)[source]#

Set file name

Parameters

filename (str) – file name

SetWorkingDirectory()[source]#

Set Working directory

WriteDisplacement()[source]#

Write displacement

WriteHeader()[source]#

Write .edp Header