La méthode des éléments finis
Avant de décrire le fonctionnement de l’algorithme d’estimation des charges, il est nécessaire d’expliquer la méthode des éléments finis. La méthode des éléments finis est une technique permettant de reconstruire les contraintes et les déformations sur une structure numérique . Une structure complexe continue est découpée en une série de problèmes discrets, qui peuvent être facilement résolus par une analyse mathématique.
Bien sûr, cela ne donne pas une résolution exacte du problème, mais on obtient une solution approchée assez fiable. Bien que cette méthode soit utilisée depuis plus de 40 ans en ingénierie et en chirurgie orthopédique, ses applications en zoologie et en paléontologie ont commencé dans les années 90.
A partir d’un système d’intérêt comme un fémur, une structure numérique est créée en utilisant la segmentation 3D . Cette structure d’intérêt correspond à un continuum avec un nombre infini de degrés de liberté. Au cours de la discrétisation , la structure est divisée en un nombre fini de sous-régions discrètes, appelées éléments, qui sont reliées entre elles par des nœuds. Cet ensemble d’éléments et de nœuds constitue un maillage d’éléments finis. Des informations supplémentaires doivent être renseignées dans le modèle , telles que des propriétés mécaniques des matériaux assignées aux différents éléments, mais aussi des charges virtuelles (flèche rouge) et des points de fixation (triangles verts).
Ces charges et ces fixations constituent les conditions aux limites. Enfin, l’analyse en éléments finis est effectuée . On extrait des représentations graphiques, qui montrent les amplitudes de contraintes et les déplacements, ainsi que des données quantitatives (densités d’énergie de déformation, contraintes de Von Mises…).
La naissance de l’algorithme d’estimation des charges
L’hypothèse sous-jacente de cet algorithme est que l’os adapte sa microstructure interne en réponse au chargement local, afin d’atteindre un chargement uniforme du tissu osseux. La structure osseuse observée est le résultat d’un mécanisme de remodelage : l’os est ajouté ou résorbé. L’ajout et la résorption s’égalisent dans le cas où le stimulus mécanique local atteint un certain équilibre. Ainsi, l’histoire de chargement (c’est à dire, tous les chargements auxquels l’animal a été soumis au cours de sa vie) la plus probable est celle qui se rapproche au mieux de ce niveau d’équilibre de remodelage dans l’os entier. L’ensemble de l’os devrait être chargé uniformément, produisant une morphologie qui est optimisée pour l’histoire de chargement externe auquel il est soumis. Bien sûr, la morphologie osseuse est aussi influencée par d’autres facteurs comme l’homéostasie du calcium, l’ontogénie ou la phylogénie. Par conséquent, le tissu osseux ne sera pas chargé de manière parfaitement uniforme. A partir de cette hypothèse et d’une microarchitecture osseuse donnée, on pourrait retrouver l’histoire du chargement, c’est-à-dire un ensemble de forces externes produisant un chargement uniforme au sein de cette microarchitecture. Le but de cet algorithme est donc d’estimer les chargements articulaires à partir de l’architecture osseuse.
Ce concept avait déjà été exploré dans des études précédentes utilisant des modèles continus d’éléments finis et prenant en compte uniquement la densité osseuse. Fischer et al. (1995) ont développé une approche dans laquelle l’amplitude d’un ensemble de charges plausibles est optimisée pour une contrainte uniforme du tissu osseux. Comme ces modèles continus ne pouvaient pas modéliser l’architecture trabéculaire, les estimations n’ont été calculées qu’à partir du continuum de contraintes et de la densité osseuse. Par la suite, ces approches ont été appliquées au fémur proximal humain et ont pu déterminer des cas de chargement en accord avec les données expérimentales publiées. Une approche similaire a été utilisée pour prédire les forces de contact dans l’articulation coxo-fémorale avec une fonction linéaire basée sur la densité osseuse.
Néanmoins, ces approches étaient utilisées sur des modèles en deux dimensions basés sur la densité osseuse, les empêchant ainsi de prédire des conditions de chargement plus complexes.
Estimation des chargements articulaires à partir de têtes fémorales de mammifères
Bien que l’algorithme d’estimation des charges articulaires ait été généré dans l’article précédent (Christen et al. 2012), l’étude présentée ici (Christen et al. 2015) constitue réellement l’idée directrice de ce chapitre. Ici, les auteurs cherchent à reconstituer le patron du chargement articulaire sur le fémur proximal à partir de la micro-structure osseuse de la tête fémorale.
L’algorithme a été appliqué sur des têtes fémorales provenant de deux humains (un sain et un ostéoporotique) et d’un chien. Les résultats sont comparés directement aux forces mesurées in vivo par des prothèses instrumentées chez d’autres sujets. L’algorithme a été également utilisé sur un taxon éteint du Pleistocène, le lion des cavernes Panthera leo spelaea, pour prédire son patron de chargement. Pour ces quatre spécimens, uniquement la tête et le col du fémur ont été scannés et transformés en modèles d’éléments finis. Bien que la zone d’intérêt soit relativement restreinte, ces modèles comportent tout de même entre 26 et 43 millions d’éléments finis. Pour l’étude précédemment décrite sur les vertèbres de souris (Christen et al. 2012), la majorité du chargement était directement transmis au niveau des disques intervertébraux.
Cela permettait d’appliquer des forces et des moments sur ces disques cartilagineux dans toutes les directions envisageables et d’avoir un maximum de conditions de chargement physiologiques possibles avec un petit nombre de cas de charges. En revanche, pour des situations plus complexes, comme celui d’un fémur proximal, les charges doivent être définies différemment. Puisque les forces agissent perpendiculairement à la surface articulaire, un plus grand nombre de charges unitaires doit être défini et celles-ci doivent être distribuées uniformément sur la surface des articulations complexes. Ainsi, pour ces têtes fémorales, les charges unitaires étaient normales à la surface articulaire et distribuées de façon homogène pour couvrir l’ensemble des chargements physiologiquement possibles.
Plus de trente cas de charges, chacun représentant une résultante de force externe, ont donc été définis et appliqués.
Validation de la méthode : utilisation de modèles contrôlés sphériques
Avant de pouvoir utiliser l’algorithme sur des cas concrets d’humérus, les fonctionnements de la méthode et du programme ont besoin d’être vérifiés. L’algorithme a donc été employé sur différentes modèles contrôlés : BilloSphere, CentrochelySphere et Alliga-toSphere. Ces sphères ont toutes des dimensions très proches en nombre de voxels, pour éviter un possible biais de la taille et l’enveloppe externe a toujours une épaisseur de 5 pixels. Les conditions aux limites des modèles ont été fixées par rapport à un plan oblique en bas à droite (représentées par des triangles) et 52 cas de charge ont été appliqués successivement sur les sphères. Les densités d’énergie de déformation ont été extraites uniquement pour le compartiment trabéculaire. A partir de ces modèles, on peut émettre les hypothèses suivantes :
Chez BilloSphere, l’os est plein. L’algorithme devrait donner une amplitude de même intensité pour tous les cas de charge.
Chez CentrochelySphere, la répartition des travées est isotropique : l’amplitude des cas de charge devrait être de la même intensité pour tous.
Chez AlligatoSphere, les travées sont très orientées selon l’axe horizontal et l’algorithme devrait montrer des amplitudes plus fortes pour les cas de charges horizontaux.
L’algorithme a conservé seulement six cas de charges pour BilloSphere et quatre pour les deux autres modèles. Toutes les amplitudes liées aux autres cas de charge étaient égales à zéro.
Influence des conditions aux limites de fixation
Dans la section précédente, il a été remarqué que les conditions aux limites du modèle semblaient jouer un rôle important dans les résultats de l’algorithme. Des tests supplémentaires ont donc été effectués pour vérifier cette nouvelle hypothèse. Le modèle de l’AlligatoSphere a été de nouveau utilisé, car il a l’avantage d’avoir des travées très orientées selon un axe horizontal. De plus, utiliser un même modèle permet d’éviter l’influence d’une variation de la fraction volumique osseuse. AlligatoSphere a été fixé selon différentes conditions aux limites : en bas , à droite , en bas et à droite simultanément. Pour les trois modèles, les mêmes éléments ont été sélectionnés pour appliquer les cas de charge. Il y avait 52 cas de charge pour le modèle fixé en bas et pour celui fixé à droite. Pour le modèle fixé en bas et à droite, seulement 43 cas de charge ont été appliqués, car les autres éléments se trouvaient à l’intérieur d’une des deux zones planes de fixation. Les densités d’énergie de déformation ont été extraites uniquement pour le compartiment trabéculaire. Pour ce test, on peut donc formuler les hypothèses suivantes :
Le modèle fixé à droite devrait montrer des amplitudes de forces plus importantes que celui fixé en bas, car ses travées sont dans l’axe horizontal et sont perpendiculaires au plan vertical de fixation du modèle.
Le modèle avec les deux conditions aux limites devrait montrer des amplitudes de forces très variées provenant de l’effet combiné des deux conditions aux limites.
Table des matières
Introduction
1 Architecture trabéculaire et mode de vie : volumes d’intérêt dans les métaphyses humérales des reptiles non-aviens (Plasse et al. 2019)
2 Méthode d’estimation des charges articulaires : méthodologie
2.1 Introduction
2.1.1 La méthode des éléments finis
2.1.2 Propriétés mécaniques
2.1.3 La naissance de l’algorithme d’estimation des charges : hypothèse et objectif
2.1.4 Algorithme d’estimation des charges
2.1.5 Tests exploratoires sur des vertèbres de souris
2.1.6 Estimation des chargements articulaires à partir de têtes fémorales de mammifères
2.2 Historique des recherches liées à cette méthode
2.2.1 Christen et al. (2013a). Subject-specific bone loading estimation in the human distal radius
2.2.2 Christen et al. (2013b). Validation of a bone loading estimation algorithm for patient-specific bone remodelling simulations
2.2.3 Christen et al. (2014). Bone remodelling in humans is load-driven but not lazy
2.2.4 Christen et al. (2016). Voxel size dependency, reproducibility and sensitivity of an in vivo bone loading estimation algorithm
2.2.5 Synek & Pahr (2018). Plausibility and parameter sensitivity of micro-finite element-based joint load prediction at the proximal femur
2.2.6 Synek et al. (2019). Inverse remodelling algorithm identifies habitual manual activities of primates based on metacarpal bone architecture
2.2.7 Synthèse de la littérature
2.3 Description détaillée de la méthode
2.3.1 Segmentation
2.3.2 Discrétisation et conditions aux limites
2.3.3 Script matlab « surface.m »
2.3.4 Script python « Jarvis.py »
2.3.5 Script matlab « load_estimation.m »
2.4 Volumes d’intérêt
2.5 Tests exploratoires : Validation de l’algorithme et sensibilités de certains paramètres
2.5.1 Validation de la méthode : utilisation de modèles contrôlés sphériques
2.5.2 Influence des conditions aux limites de fixation
2.5.3 SED : Compartiment trabéculaire vs Enveloppe corticale vs Les deux
2.5.4 Nombre de cas de charges : 13, 26 ou 52 ?
2.5.5 Homogénéité des cas de charges
2.6 Conclusion : Avantages et limitations de la méthode
2.7 Références bibliographiques
3 Méthode d’estimation des charges articulaires : application aux têtes humérales de tortues
3.1 Introduction
3.2 Matériels et méthodes
3.2.1 Taxonomie
3.2.2 Locomotion
3.2.3 Génération des modèles d’éléments finis
3.3 Résultats
3.4 Discussion
3.4.1 Comparaison entre tortues actuelles
3.4.2 Inférence sur Hylaeochelys
3.4.3 Inférence sur Trionyx stiriacus
3.4.4 Limitations de l’étude
3.5 Conclusion
3.6 Références bibliographiques
Conclusion et perspectives
Conclusion
Perspectives
Méthode d’estimation des charges
Taxons supplémentaires
Références bibliographiques
A Plasse et al. 2019 – Additional Files
B Script matlab « surface.m »
C Script python « Jarvis.py »
C.1 Importer les modules Python
C.2 Créer la boucle
C.3 Importer du fichier d’entrée
C.4 S’assurer de la connectivité
C.5 Générer un maillage d’éléments finis
C.6 Enregistrer la géométrie dans un fichier .vtu
C.7 Définir les matériaux
C.8 Créer une table des matériaux
C.9 Créer le modèle d’éléments finis
C.10 Créer les ensembles de nœuds et d’éléments
C.11 Conditions aux limites : fixations
C.12 Conditions aux limites : charge appliquée
C.13 Paramètres de post-traitement
C.14 Créer le fichier .n88model
C.15 Résoudre le modèle avec FAIM
C.16 Extraire les densités d’énergie de déformation
D Script matlab « load_estimation.m »
E Tests préliminaires avec Tiliqua scincoides