Felupe

Latest version: v8.5.0

Safety actively analyzes 623219 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 10

8.5.0

Added
- Add `umat_new, res = ConstitutiveMaterial.optimize(ux=[stretches, stresses], ps=None, bx=None)` to optimize the material parameters on given experimental data for incompressible uniaxial, biaxial and / or planar tension / compression data by `scipy.optimize.least_squares()`.
- Add initial default material parameters for the hyperelastic material model formulations.

8.4.0

Added
- Add `math.solve_2d(A, b, solver=np.linalg.solve, **kwargs)` to be used in `newtonrhapson(solve=solve_2d, ...)` for two-dimensional unknowns. This is useful for local Newton-iterations related to viscoelastic evolution equations inside constitutive material formulations.
- Add x- and y-offsets in `Job.plot(xoffset=0.0, yoffset=0.0)`.

Changed
- Wrap the ax-title with the parameters of the material model in `ConstitutiveMaterial.plot()`.

Fixed
- Sort array of principal values in descending order before plotting in `Scene.plot("Principal Values of ...")`. This ensures that the labels are matching user-defined arrays of principal values.

8.3.1

Fixed
- Set the default verbosity level to None in `newtonrhapson(verbose=None)` and `Job.evaluate(verbose=None)`. If None, this defaults to True (as before) but evaluates the environmental variable `FELUPE_VERBOSE` if present with `FELUPE_VERBOSE == "true"`. This does not ignore custom verbosity levels.

8.3.0

Added
- Add a method to convert a mesh to a PyVista unstructured grid `Mesh.as_pyvista(cell_type=None)`.

Changed
- Change default line-width from `1.0` to `2.0` in `ViewMesh.plot(line_width=2.0)`.
- Enforce a 3d points-array in `Mesh.as_meshio()`.

Fixed
- Fix previously ignored line-width in the plot of a mesh `ViewMesh.plot(line_width=1.0)`.
- Fix `math.tovoigt()` for one-dimensional tensors.

8.2.1

Fixed
- Fix `FieldContainer.evaluate.strain(fun=lambda stretch: stretch)` for custom strain-stretch callables. The `fun`-argument was previously ignored.

8.2.0

Added
- Add methods to evaluate different strain measures of a field container, i.e. `FieldContainer.evaluate.strain(tensor=True, asvoigt=False, k=0)`, `FieldContainer.evaluate.log_strain(tensor=True, asvoigt=False)` or `FieldContainer.evaluate.green_lagrange_strain(tensor=True, asvoigt=False)`. These methods refer to `math.strain(k=0)` which uses `math.strain_stretch_1d(k=0)` by default with the strain exponent `k` of the Seth-Hill strain formulation.

Changed
- Change the return type of `math.eig()` which returns a namedtuple with attributes `eigenvalues` and `eigenvectors`. Now consistent with NumPy. This also affects `math.eigh()`.
- Change the shape of the array of eigenvectors returned by `math.eig()` from `(a, i, ...)` to `(i, a, ...)`. Now consistent with NumPy. This also affects `math.eigh()`.
- Switch from a hard-coded logarithmic strain evaluation to a more generalized Seth-Hill strain-stretch relation in `math.strain(fun=math.strain_stretch_1d, k=0)` with a default strain-exponent of `k=0` which returns the logarithmic strain.

Page 1 of 10

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.