I started working as Bioengineering Application Developer for Mathematica in the Wolfram company.

Several weeks ago I was contacted by the Numerical Computation group of Wolfram offering me a fixsed term internship to work on computational models for biological tissues. It is a division of the Research and Development department and my position is about finite element modeling (FEM) applied in very specific areas. Everything started from my background in both finite element analysis and bioengineering, and from several talks resulting from some content published on my website and on social networks.


Wolfram Research, Inc. is an American multinational company that operates in computation software, publishing and research and development. It was founded by Stephen Wolfram and now the head products are the Wolfram Language, Wolfram Mathematica and Wolfram|Alpha.

Mathematica was released more than 30 years ago. Alpha was launched in 2009 as a search engine. In 2014 the Wolfram Language was introduced as a new multi-paradigm coding language that easily involves symbolic computation, after several years of strong evolution.

Wolfram computational application
Mathematica: “the world’s definitive system for modern technical computing”

It is a software system with several built-in libraries to easily implement computational models in machine learning, statistics, networks analysis, optimization, symbolic maths, data analysis and the creation of general various types of algorithms. It is widely admired for technical computation and for the elegant use of computational language.

Solid mechanics

In mechanics, it is fundamental to investigate the behavior of solids under loads and constraints. Solid mechanics deals with the description of solid bodies in three dimensions focusing on the mechanical response.

From the continuum theory, it is possible to develop partial differential equations (PDE) to describe the behavior of solid bodies. They are mathematical expressions that involve the body’s descriptions through several quantities (for example the displacement) and the variation of these quantities both in time and in space. The PDEs are types of equations that are good for resolution with numerical methods such as the Finite Element and could be solved, in Mathematica, with a well developed SolidMechanicsPDE library.

The motion of a continuum body. Source: wikimedia

In order to describe biologicals tissue it is really interesting to deal with rubber-like hyperelastic material. This material constitutive description postulate to describe the mathematical model with a strain energy density function. So, we can derive the stress as the derivative of this energy with respect to the strain measure.

Furthermore, most biological materials go under large deformations and present strong non-linearity, time dependency, viscoelastic properties, and a lot of interesting features that require advanced numerical methods to solve the PDE model.

vars = {{u[x, y, z], v[x, y, z], w[x, y, z]}, {x, y, z}};
pars = <|"Material" -> Entity["Element", "Titanium"]|>;
Subscript[\[CapitalGamma], force] = 
  SolidBoundaryLoadValue[x == 10, vars, 
   pars, <|"Force" -> {0, 0, Quantity[-1000, "Newtons"]}|>];
Subscript[\[CapitalGamma], wall] = 
  SolidFixedCondition[x == 0, vars, pars];
MatrixForm[op = SolidMechanicsPDEComponent[vars, pars]]
beamDisplacement = 
  NDSolveValue[{op == Subscript[\[CapitalGamma], force], 
    Subscript[\[CapitalGamma], wall]}, {u[x, y, z], v[x, y, z], 
    w[x, y, z]}, {x, y, z} \[Element] \[CapitalOmega]];