/* * The Guccione Constitutive Material Law * * Model Status * * ValidateCellML verifies this model as valid CellML with consistent * units. * * Model Structure * * ABSTRACT: The central problem in modelling the multi-dimensional * mechanics of the heart is in identifying functional forms and * parameters of the constitutive equations, which describe the * material properties of the resting and active, normal and diseased * myocardium. The constitutive properties of myocardium are three * dimensional, anisotropic, nonlinear and time dependent. Formulating * useful constitutive laws requires a combination of multi-axial * tissue testing in vitro, microstructural modelling based on * quantitative morphology, statistical parameter estimation, and * validation with measurements from intact hearts. Recent models * capture some important properties of healthy and diseased myocardium * including: the nonlinear interactions between the responses * to different loading patterns; the influence of the laminar * myofibre sheet architecture; the effects of transverse stresses * developed by the myocytes; and the relationship between collagen * fibre architecture and mechanical properties in healing scar * tissue after myocardial infarction. * * The model was implemented in a manner that could be used for * peforming finite element model simulations on the CMISS software * program developed at the Auckland Bioengineering Institute, * The University of Auckland. * * For additional information on implementation of cellML files * in CMISS, please refer to the following Link. * * The original paper reference is cited below: * * Modelling cardiac mechanical properties in three dimensions, * K.D. Costa, J.W. Holmes and A. D. McCulloch, 2001. Philosophical * Transactions of The Royal Society , 359, 1233-1250. (no PubMed * ID) */ import nsrunit; unit conversion on; unit strain=1 dimensionless; unit stress=1 dimensionless; math main { //Warning: the following variables were set 'extern' or given // an initial value of '0' because the model would otherwise be // underdetermined: E11, E12, E13, E22, E23, E33 extern real E11 strain; extern real E12 strain; extern real E13 strain; extern real E22 strain; extern real E23 strain; extern real E33 strain; real a strain; a=0; real bff strain; bff=0; real bfn strain; bfn=0; real bfs strain; bfs=0; real bnn strain; bnn=0; real bns strain; bns=0; real bss strain; bss=0; real Tdev11 stress; real Tdev12 stress; real Tdev13 stress; real Tdev22 stress; real Tdev23 stress; real Tdev33 stress; real q strain; // // q=(bff*E11^2+bss*E22^2+bnn*E33^2+2*bfn*E13^2+2*bfs*E12^2+2*bns*E23^2); Tdev11=(a*bff*E11*exp(q)); Tdev22=(a*bss*E22*exp(q)); Tdev33=(a*bnn*E33*exp(q)); Tdev12=(a*bfs*E12*exp(q)); Tdev13=(a*bfn*E13*exp(q)); Tdev23=(a*bns*E23*exp(q)); }