A mesh morpher can be used to deform the volume mesh in order to track the motion of a given boundary surface of that mesh. This is typically required for applications where a body immersed in the fluid can move or deform, such as aerostructural or optimization calculations. The morpher is instantiated using the tbox::MshDeform C++ class as,
```python
morpher=tbox.MshDeform(msh,linsol,dim,nthreads)
morpher=tbox.MshDeform(msh,linsol,dim,nthreads=1)
```
where `linsol` is a linear solver and `nthreads` is the number of threads (can be set automatically using `fwk.parseargs().k`). In order to solve the linear elasticity equations to deform the mesh, an ILU preconditioned GMRES usually works well as linear solver: `linsol = tbox.Gmres(1, 1e-6, 30, 1e-8)`. More information about the available linear solvers can be found [here](use_custom_solver).
where `linsol` is a linear solver and `nthreads` is the number of threads (optional and defaults to 1, can be set automatically using `fwk.parseargs().k`). In order to solve the linear elasticity equations to deform the mesh, an ILU preconditioned GMRES usually works well as linear solver: `linsol = tbox.Gmres(1, 1e-6, 30, 1e-8)`. More information about the available linear solvers can be found [here](use_custom_solver).
The grid associated to the volume (fluid), and the fixed, moving and internal boundaries are added using