Contents
Overview
This page provides general guidelines that can be followed to troubleshoot when a knee model is not running as expected in FEBio. It is often difficult to know what is causing a problem with the model, but we provide here some examples of methods to help determine the cause of the issues.
When the first time step won't converge
Sometimes a model will not succeed in converging even at the first step. This is often a sign that there is some underlying issue with a tie or contact in the model. These are suggested steps to take to discover where the issue lies.
We recommend beginning with a very simple model, and adding complexities one at a time. Here is an example workflow for a full knee model that is not running for 90 degree flexion.
Begin by commenting all contacts in the model, and the MCL-MNS-M tie. (Ligament-Bone ties on their own generally do not cause issues - more likely it is a contact or some combination of contacts that is causing the issues.) Add the contacts back in the order specified below. At each step, run the model. It does not need to run to fully converge, if the first time step converges it is usually a sign that there is no issue with the contact, and you can interrupt the run and move on.
- Cartilage to Cartilage contacts (if this fails break them down one at a time ex: first only FMC to TBC-L, then add FMC to TBC-M...)
- Meniscus to cartilage contacts (if this fails break them down one at a time ex: first add MNS-M to FMC, then MNS-M to TBC-M...)
- MCL to bone contacts
- MCL to MNS-M tie
- QAT to bone contacts
If the first time step does not converge when a contact is added, some things to investigate are:
- penetrating tissues (in this case, edit the geometry to reduce penetration)
- contact surfaces that intersect with tie surfaces (check the MED files in salome)
- if you get a segmentation fault error when a bone-to-ligament contact is added, try changing the contact type from "sliding-elastic" to "sliding-node-on facet".
- try commenting all other contacts, and leaving ONLY the problematic contact on, to see if it is a stand-alone problem, or if there is some combination of contacts that is causing an issue. This may provide additional clues to what the issue is.
Once the above contacts are all running, run the model as far as it will converge. Looking at results in postview will indicate if any other ligament-bone or ligament-ligament contacts are necessary to add. For example, if there is penetration between the ACL and PCL, add the ACL-PCL contact.
General convergence issues
Convergence issues are often very difficult to diagnose as there can be many factors involved in the non-convergence of a model. Here we list some tools that may help to identify issues:
in the terminal window/log file of a model, FEBio will indicate if negative jacobians were detected at any element. In postview, you can search for this element using the edit>find tool.
- use postview to view stresses, strains, contact pressure to look for stress concentrations. Strange patterns can sometimes be an indication that the geometry needs further smoothing, or it too coarse/fine.
Checking tissue geometries
When a model is not converging, the geometry itself can sometimes be the cause of the problem. To test a tissue individually for convergence issues, it is recommended to create "reduced models", where only the tissue of interest is being tested. Edit the geometry as needed.
Ligaments
A bone-ligament-bone model can be created, with the ligament tied to the bones. one bone can be fixed, and the other bone can be translated using a rigid body translation approximately along the long axis of the ligament. ex: Checking the ACL. Create a model with TBB, ACL, FMB. Fix the TBB, translate the FMB in the z direction ~ 4 mm so that the ACL is "stretched" . If this converges, view the results in postview and check that there are no stress concentrations caused by element-locking, etc.
Cartilage
A bone and cartilage model can be created, and a simple compression of cartilage against cartilage can be tested by fixing one bone, and translating the other bone towards it so that the cartilage is compressed between the bones. Check in postview the stress/pressure distributions in the cartilage. Sometimes if a cartilage geometry was not smoothed enough, there can be 'ridges' in the cartilage which create a striped stress distribution. In this case the cartilage needs to be smoothed further.