1 Introduction

Tissue engineering (TE) represents the confluence of work from clinic, engineering, and science to reach their ultimate goal—successful clinical therapies. The clinical perspective on TE is strongly applications-oriented and now has reached the stage of incorporating living cells into prototype tissue-engineered clinical solutions such as vascular or skin grafts, and heart valves [1, 2]. The success of these clinical applications requires a full understanding of the mechanical behavior of the tissues, an idea put forward as functional tissue engineering [3]. Such a tissue is formed by the integration of an underlying network of collagen fibers, cells and intercellular substances. The basic mechanical units of collagenous tissues are fibers that have diameters ranging from 0.1 to 0.5 μm [4]. The mechanical properties of the tissue depend on how the fibers, cells, and extracellular substances are organized into a structure [5]. However, in physiological and biomechanical applications, the major interest is focused on the behavior of the tissues at centimeter length scale. Therefore, a model to analyze the mechanical behavior of soft tissues at both the fiber and tissue scales in a coupled manner is needed.

A multiscale structural model approach that incorporates the microstructure of the underlying fibril network has the potential to describe complex tissue behavior. Essential to such a model is the assumption that the overall mechanical behavior of the material derives from the sum of the micro-responses of its constituents [68]. A volume-averaging-based structural model has been developed to provide the linkage between the fiber-level mechanics and the behavior of biomechanical tissue components [9, 10]. This model captured the three-dimensionality and heterogeneity of the network, the interaction among the collagen fibers, and the realignment of the fibers to predict the mechanical behavior of collagen networks. This model has been solved by employing a three-dimensional Galerkin finite element method for the macroscopic scale problem and with the collagen network microstructure represented as a three dimensional fibril network to study the elastic mechanical behavior for soft tissues in [11]. To date, these methods have been applied to only simple geometries. However, the structures of both the native and artificial engineered tissues are often complex, for example Fig. 1 shows an arterial bifurcation. To study the mechanical behavior of general soft tissues requires the multi-scale model must be able to deal with any 3D geometries.

Fig. 1
figure 1

Geometry for an arterial bifurcation [12]

This paper presents a procedure that implements the two scale structural model in a multiscale component toolkit (MCTK) that is capable of dealing with arbitrary three-dimensional complex geometries. Each scale is treated as an independent component and exchanges the necessary information through a scale-linking operator. Two key methodologies, parallelization and adaptivity, are important for the practical application of the multiscale simulations to realistic tissue components.

This paper is organized as follows: Sect. 2 presents the multiscale structural model used for describing the mechanical behavior of soft tissues. Section 3 describes the procedure to solve the model in the MCTK. Section 4 and 5 discuss the parallel processing and adaptivity strategies used. Results of the arterial bifurcation under uniaxial extension are given in Sect. 6.

2 Multiscale model of collagen mechanics

Volume-averaging theory is used to couple the macroscopic and microscopic scales. The microscopic scale, which represents the collagen network, is modeled as a three-dimensional, mechanical network of collagen fibers idealized as uniaxial members. The collagen network provides a statistical representation of the actual collagen architecture, and is contained in a representative volume element (RVE). In the RVE, the fibers are linked to each other at cross-links. The mechanical response of the individual fiber is governed by a constitutive equation [10, 16]. Separate RVEs are constructed at each integration point of the finite element mesh of the macroscopic domain, and the deformation of the RVE boundary is determined from the macroscopic deformation through the finite element solution of the macroscopic scale problem. The deformation of the RVE boundary causes the fibers to deform, and the force balance among the fibers determines the network equilibrium position and the local network forces. From the local network forces and volume-averaging theory, the averaged (macroscopic) Cauchy stress tensor is calculated for each RVE and linked to the macroscale where the averaged stress balance is solved. Thus, by solving a set of micro-macro problems, the tissue-level behavior can be related directly to the fibril mechanics and the network structure. In this way, the model can account for the orientation of the network, the interaction among the fibers, and the realignment of the fibers during deformation. These phenomena play key roles in the mechanical response of soft tissues. As an example, Fig. 2 shows the multiscale model for an engineered tissue with the finite element mesh for the macroscopic scale domain and the fibril network for the microscopic scale.

Fig. 2
figure 2

Multiscale formulation of the mathematical model for an engineered arterial bypass grafts with complex geometry [13]

2.1 Governing equations

Three governing equations are required for the formulation of the mathematical model: a constitutive equation for the collagen fiber, the equation for the volume-averaged Cauchy stress tensor, and the macroscopic scale stress balance. The collagen fiber exhibits a non-linear force-elongation response, which is described by a phenomenological equation of the form [10, 15],

$$ F_{f} = {\frac{E_{f}A_{f}(e^{{B\varepsilon_{f}}}-1)}{B}}, $$
(1)

where F f is the force exerted on the fiber, A f is the fiber cross-sectional area, B is a constant, ɛ f is the fiber’s Green strain computing by,

$$ \varepsilon_{f} = 0.5(\lambda^{2}_{f}-1), $$
(2)

where λ f is the fiber stretch ratio. In the limit λ f → 1, (1) reduces to a linear elastic fiber with modulus E f .

The volume-averaged Cauchy stress tensor, S ij , is calculated from the microscopic stress tensor, s ij through integral averaging [6, 7],

$$ S_{ij} = {\frac{1}{V}}\int\limits_{V}s_{ij}{\rm d}V, $$
(3)

where V is the volume of RVE and indexcial notation is used throughout the paper. Multiplying the microscopic stress tensor with the Kronecker delta δ ik we have,

$$ s_{ij}=s_{kj}\delta_{ik}=s_{kj}x_{i,k}, $$
(4)

where x is the directional vector. Under conditions of microscopic equilibrium, i.e. s kj,j  = 0, the divergence theorem gives,

$$ S_{ij} = {\frac{1}{V}}\int\limits_{\partial V}n_{k}s_{kj}x_{i}{\rm d}S={\frac{1} {V}}\int\limits_{\partial V}x_{i}t_{j}{\rm d}S, $$
(5)

where t j  = n k s kj is the traction exerted on the boundaries of RVE. For a network of thin fibers, each boundary cross-link may be treated as a point with the integral of the traction being the force on the cross-link, so (5) can be written as [17],

$$ S_{ij} = {\frac{1}{V}}\sum_{{\rm boundary}\;\;{\rm crosslinks}}x_{i}f_{j}, $$
(6)

where x i is the i-component of the position of the boundary cross-link and f j is the force developed on the boundary cross-link in the j-direction.

The third equation in the multiscale engineering tissue model describes the force balance for the macroscopic scale. Using Leibnitz’s theorem and again invoking microscopic equilibrium (s ij,j  = 0), we get an expression for the divergence of the macroscopic stress tensor [16],

$$ S_{ij,i} = {\frac{1}{V}}\oint(s_{ij}-S_{ij})u_{k,i}\eta_{k}{\rm d}S, $$
(7)

where u is the displacement of the RVE boundary and η k is the unit normal vector. The right hand side of (7) is due to the correlation between inhomogeneous displacement of the RVE boundary and local inhomogeneities in the stress field.

3 Solving the multiscale model through a multiscale component toolkit

The multiscale model for the soft tissues defined in (17) is solved in six steps as follows,

  • The macroscopic boundary value problem in (7) is discretized over the domain of interest using the Galerkin finite element method.

  • The deformation of the boundary of each RVE is determined by the macroscopic deformation field.

  • The force balance among the fibers in each RVE defined in (1) is solved.

  • The volume-averaged Cauchy stress for the collagen defined in (6) for each RVE is computed.

  • The Cauchy stress is passed to the macroscopic problem.

  • The macroscopic problem in (7) uses the stress to update the finite element deformation field.

A Newton-Raphson iteration is employed for both of the nonlinear macroscopic finite element and microscopic force problems until the convergence is achieved [10].

The simulation is completed using a MCTK, which provides services to coordinate models in multiscale simulations. Emphasis is placed on defining the appropriate components needed for the multiscale tissue mechanical problems while MCTK has been used for an adaptive concurrent atomistic/continuum multiscale problem [18].

3.1 Multiscale component toolkit (MCTK)

The process of defining and generalizing multiscale simulations in MCTK begins with consideration of the process of executing a single-scale simulation. Starting from a generalized problem specification in MCTK, the transformations involved in performing a simulation are clearly abstracted into four levels shown in Fig. 3a [19]. The three types of information on each level are the domain of the simulation, the governing model, and the set of physical parameters defined over the domain needed to qualify the governing model at that level. The top level represents a generalized statement of the single-simulation problem specification. Each lower level represents the result of a transformation of the information from the previous level. The first transformation is to convert the problem specification into a mathematically complete description. Since these mathematical descriptions typically can not be solved directly, an appropriate computational model must be constructed, which leads finally to a numerical system appropriate for solution on a digital computer. The abstraction of a multi-scale simulation employs the same four-level decomposition as the single-scale simulation shown in Fig. 3b [19]. The key addition is the structure and functions needed to perform transformations of information across scales shown in Fig. 3c.

Fig. 3
figure 3

Abstraction of the single-scale and multi-scale computation. a Abstraction for single scale computation. b Abstraction for multi-scale computation. c Abstraction for scale-linking operation

3.2 Macroscopic continuum component

The macroscopic scale problem of the multiscale model for soft tissue functions at continuum scale. From the single-scale four-level viewpoint in MCTK, the problem specification can be any mechanical behavior of structures related to soft tissues such as tendons, ligaments, skin, cartilage, or arteries etc. Starting from the stress balance in (7), a test function v is multiplied and integration by parts is applied over the macroscopic domain Ω such that,

$$ -\int\limits_{\Upomega}v_{j,i}S_{ij}{\rm d}\Upomega + \int\limits_{\partial \Upomega}v_{j}S_{ij}N_{i}{\rm d}\Upomega - \int\limits_{\Upomega}v_{j}Q_{j}{\rm d}\Upomega = 0, $$
(8)

where Q j is the right hand side term in (7), N i is the normal to the macroscopic domain. The domains are discretized into finite element meshes and the S ij and Q j values are calculated from the microscopic averaging volume at each integration point.

The component to solve (8) in MCTK has the following functionality:

  • Support the definition of the continuum domain with CAD systems such as Parasolid and Acis [20, 21] using image data, for example, from contrast-enhanced magnetic resonance angiography (CE-MRA) [13]. Starting from the image data, one approach to construct the solid models is to produce cross sections to match the lumen shape of the vessel along the manually selected patches [13]. Non-uniform rational B-spline (NURB) surfaces were lofted through the cross sections and bounded to create Parasolid solid models. More detail related to imaged based solid model construction can be found in [14]. The domains in solid model systems are represented with boundary representation methods for the continuum level simulation that use the abstraction of topological entities and their adjacencies to represent the entities of different dimensions. The actual shape information of the topological entities can be thought as geometric information associated with the entity [19]. In addition to the topological entities and associated shape information, the interaction with geometric modeling systems allows the continuum component to define and maintain a consistent representation of the geometric domain during the process of solving the problem.

  • Generate appropriate meshes for any complex geometric domains based on the selected finite element method to be used to solve the problem. In case of tissues with thin section structures, three-dimensional curved layered meshes can be constructed [2224]. The meshes maintain an association with the continuum domain representations by relating a set of topological entities between the explicit and computational domain [25] to support a full set of operations needed for the reliable multiscale analysis.

  • Define the physical parameters for the governing equations over the topological entities of the geometric model [26]. The tensor quantity information is transferred to the finite element meshes using the association between meshes and domains and appropriate finite element shape functions.

  • Provide the flexibility to select a h-version or p-version adaptation strategy to control the finite element discretization errors. The h-version adaptive method modifies the meshes through local mesh modification tools [27, 28], and the p-version method is to enrich the polynomial orders of mesh entities [29].

3.3 Microscopic representative volume component

At the microscopic scale of the multiscale model the RVE is a cubic fibril network of unit length [10]. The fibril mesh at each RVE is generated by growing segments at randomly nucleation sites inside the cubic volume. Two segments grow in opposite directions along a randomly chosen vector at each nucleation site. The segments grow stepwise by a unit length, and a segment stops growing if it passes the volume boundaries or has collided with another segment; either a boundary crosslink or a interior crosslink is generated at the point of intersection. A fiber is defined as the line between two crosslinks associated with the same segment. The deformation of the fiber network causes the generation of fiber forces that are transmitted to the crosslinks. A force balance among the crosslinks gives the equilibrium position of the fibers and the developed network stress [10]. Networks with a preferred orientation are generated by selecting the random segment direction from anisotropic distributions.

Each RVE in MCTK is defined as an independent object that takes the point at the macroscopic continuum domain as input and constructs a unit cube at the point and initializes it with a pre-defined fibril network mesh. At each iteration step, the macroscopic displacement at each point on the RVE boundaries is calculated and used as an input to the microscopic problem. The force balance problem for each fiber is assembled using (1), and the solved microscopic forces are used to compute the average stress and the derivatives with respect to the macroscopic finite element nodes needed to solve (8). Each RVE object is independent that provides the flexibility to use different fibril network mesh configurations for different RVEs. Such capability is useful when the material structure varies over the domain.

3.4 Information passing scale-linking operator

Acting as a buffer in the multiscale model, the scale-linking operator applies a two-way information passing strategy to deliver the needed information for each scale. By retrieving the information from the scale-linking operator, each component can accomplish its own computation without interfering with the others. The information passed from the macroscopic continuum component to the microscopic Representative volume component includes the position of the Gauss quadrature point that is used to construct the unit cube for each RVE and the displacement deformation field of the finite elements to determine appropriate boundaries for the RVE. The average Cauchy stress and its derivatives with respect to the finite element node positions are passed in the reverse direction and used by the macroscopic continuum component to assemble and solve (7).

4 Parallel processing

The computational cost for the multiscale mechanical problem is substantial. For example, Fig. 2 shows a mesh with 4,584 macroscopic tetrahedral elements and the total number of degrees of freedom for the macroscopic scale is 11,000. Considering that 4 integration points are used per element and each RVE contains 362 fibers that roughly have 1000 degrees of freedom, the sum of the degrees of freedom for RVEs is 18 million. Therefore, parallelization of the multiscale computation is essential for solving the problems in large three-dimensional complex domains. Because the RVE dofs are 99.9% of the total degrees of freedom of the multiscale problem and each RVE is treated as an independent object in MCTK that can be easily solved in parallel, the initial parallelization of the multiscale computation is focused on parallelizing the microscopic scale problem and solving the macroscopic scale problem on one processor (the control processor).

Let t s be the executing time using single processor system. t s consists of three parts: t macro, t scale-linking, and t micro. Considering that the time for information passing by using the scale linking operator is much less than the other two and can be neglected, t s can be approximated as,

$$ t_{s} = t_{\rm macro} + t_{\rm micro}. $$
(9)

Let \(f = \frac{t_{\rm macro}}{t_{s}},\) according to the Amdahl’s law [30], the speedup S(p) can be given as,

$$ S(p) = {\frac{p}{1+(p-1)f}}. $$
(10)

Equation 10 indicates that the maximum speedup of applied parallel strategy is limited to 1/f. However, f in the multiscale mechanics model is about 10−3 ∼ 10−4, which allows the computation to achieve reasonable speedup on parallel computer systems of a few hundreds processors.

To minimize the data communication between the control and other processors, the RVEs of one finite element are treated as a set such that the deformation configuration of one finite element needed by all the RVEs in its closure is only required to be sent to one specified processor.

Using the above parallelization methodology to solve the multiscale problem for soft tissues with N R mesh regions on p processors, the computation on the control processor consists of the following steps:

  1. 1.

    Load the model, mesh, and boundary condition definitions for the macroscopic continuum problem,

  2. 2.

    Compute the number of finite elements n i whose RVEs are to be distributed to each processor by,

    $$ n_{i} = {\frac{N_{R}}{p}} + (i-1) < (N_{R}\%p), \quad i=0\ldots p-1. $$
    (11)

    Equation 11 ensures that the control processor (i = 0) might have one fewer finite element than the other processors. For example, in case of 20 elements on 3 processors, the numbers of elements to distribute the RVEs on each processor are 6 (control processor), 7, 7 respectively.

  3. 3.

    Collect and send the deformation information of the finite elements to the other processors using the following procedure.

      for i from 1 to p−1

       count = 0

       iterate the mesh regions and get one region

        collect the deformation information of the region

        increase count by 1

        if count equals to n i , break out of the iteration loop

       send out the deformation information to processor i

      end for

  4. 4.

    Solve the RVE problems of the remaining n 0 mesh regions on the control processor.

  5. 5.

    Receive the stress and stress derivatives from the other processors,

  6. 6.

    Assemble and solve the linear algebraic system,

  7. 7.

    Update the deformation of the finite element mesh,

  8. 8.

    Go to step 3 if the convergence tolerance of the Newton iteration method to solve the macroscopic problem is not satisfied.

For each of the other processors, the procedure consists of the following steps:

  1. 1.

    Receive the deformation information from the control processor,

  2. 2.

    Initialize the RVEs for each finite element at the first time,

  3. 3.

    Solve the microscopic problem of each RVE,

  4. 4.

    Compute and send the stress and stress derivatives to the control processor.

The general 3D complex geometric models may require mixed topology (hexahedral, tetrahedral, prism and pyramid) elements to construct appropriate meshes. Different topology mesh entities have different numbers of integration points, determining the number of RVEs per element. Therefore, the information passed between the control and slave processor must be able to indicate any combination of the mesh topology and integration order. MPI_send and MPI_recv [31] are applied for the communication between processors with the specified source and destination processors.

5 Adaptivity

The objective of applying adaptive methods to the multiscale simulations of tissues is to achieve the specified solution accuracy with less computational cost. The adaptive methodologies must consider error control at each scale as well as the scale linking operators.

At the macroscopic scale, h-version, p-version, or hp-version adaptive methods are the common methodologies to control the finite element discretization error. The h-version method modifies the finite element meshes, and the p-version method assigns appropriate polynomial order for elements or element coordinates. The hp-version method is the combination of both of the methods. These approaches can improve the computational efficiency by reducing the number of the finite elements or the integration points per element at the macroscopic scale, which leads to a number reduction of the RVEs at the microscopic scale. Appropriate error estimators and indicators to measure the error over the meshes and place the finer finite element resolution in the most needed domains are required to develop these approaches. As an example, equally distribution of the error over the meshes presented in [32] can be used as an indicator to refine the finite element meshes.

At the microscopic scale, the adaptation strategy must be able to reduce the computation of solving the fiber force balance problems for RVEs by applying model adaptivity. Considering that the fiber force problem of each RVE is determined by the deformation of the RVE boundaries at each iteration step, we can avoid the updating of a RVE at iteration steps if its boundary deformation have undergone very little change since the previous iteration step is less than a selected criteria. In this case, the previously calculated force deformation relations are still acceptable. This adaptive process is reset for each load step. This approach has been implemented in the MCTK for the multiscale simulation for soft tissues given in this paper.

6 Examples

The arterial bifurcation shown in Fig. 1 under 10% strain extension along z direction was solved using the multiscale model in MCTK to demonstrate the capability of the framework to deal with arbitrary complex geometries. The extrusion caused the sample length to increase from 28.54 to 31.39 cm. Two meshes with 2 layer elements and 0.5 cm thickness per layer were generated. Both of the meshes had the same surface triangulation. The first mesh (mesh 1) had 31,278 tetrahedral regions, and the second one (mesh 2) was a mixed topology mesh with 10,414 prisms, 16 pyramids, and 4 tetrahedrons. Figure 4 shows the mixed topology mesh.

Fig. 4
figure 4

Mixed topology mesh for the human bifurcate artery

The integration schemes selected for different topology elements were 4, 6, and 8 integration points for tetrahedron, prism, and pyramid respectively. The comparison of the degrees of freedom for macroscopic and microscopic scales is presented in Table 1. Both of the meshes had the same degrees of freedom at the macroscopic scale because the same number of vertices and linear shape functions are used. However, the number of RVEs for the mixed topology mesh were 50% of those for the tetrahedral mesh leading to 50% fewer degrees of freedom at the microscopic scale. Therefore, the tetrahedral mesh had approximately 112 millions degrees freedom, while the mixed topology mesh had nearly 56.4 millions.

Table 1 Statistics comparison for the two meshes at the macroscopic and microscopic scales

The parameters used to compute the fiber force balance in (1) were chosen as B = 1.2, \(\frac{E_{f}A_{f}}{B}=8.0\times 10^{-7}N,\) based on [10]. The fibril network mesh for each RVE used the same configuration which had 362 fibers. The problem was solved in 20 steps with 0.5% incremental extrusion per step. Figures 5 and 6 show the displacement and stress S zz contour of the mixed topology mesh at the first and last load step.

Fig. 5
figure 5

Displacement contour for the mixed topology mesh

Fig. 6
figure 6

S zz contour for the mixed topology mesh

Figure 7 showed the realignment of the fibers in a RVE at position A in Fig. 4. The orientation parameter Ω zz along the z direction of extension can be calculated as [10, 11],

$$ \Upomega_{zz} = {\frac{\sum l^2_{zi}/l_{i}}{\sum l_{i}}} $$
(12)

where l i is the length of fiber i, l zi is the projection of its length in the z direction, and the sum is over all fibers in the RVE. For an isotropic network, the orientation parameter is 1/3, and for a perfectly aligned network, Ω zz  = 1. The initial orientation parameter was 0.3365 for the nearly isotropic network (shown in top of Fig. 7). The orientation parameter was 0.4012 (shown in bottom of Fig. 7) at the last load step, indicating the fibers realignment along the direction of extension.

Fig. 7
figure 7

Fiber meshes at the initial (top) and last (bottom) load step

The multiscale problem was solved on a SCOREC computer cluster using 32, 64, and 128 processors respectively. Let β p be the ratio between the executing time for mesh 1 and mesh 2 with p processors to solve the multiscale problem such as,

$$ \beta_{p}={\frac{\rm executing\; time\; for \;mesh\; 2 \;with\; p\; processor} {\rm executing\; time\; for\; mesh\; 1\; with\; p\; processor}} $$
(13)

The ratio β p was 0.46 on 32 processors, 0.47 on 64 processors, and 0.52 on 128 processors. The results demonstrated that appropriately constructed meshes are capable of achieving the computational efficiency.

Let \(S({\frac{p}{2}})\) be the relative speedup that is the speedup against program on \({\frac{p}{2}}\) processors.

$$ S\left({\frac{p}{2}}\right) = {\frac{\rm executing\;time\;on\;{\frac{p} {2}}\;processors}{\rm executing\;time\;on\;p\;processors}} $$
(14)

Table 2 presents the relative speedup for the two meshes. The statistics show that the \(S({{p}/{2}})\) is acceptably close to the ideal value 2, indicating that the parallel scalability is well maintained for both of the meshes by using the parallel strategy discussed in Sect. 4.

Table 2 Relative speedup for the two meshes with 64 and 128 processors

The adaptation strategy discussed in Sect. 5 has been applied for the mixed topology mesh to solve the problem with 128 processors. In this strategy, the total number of the RVEs was constant and the evolution of RVEs at each iteration step was selected. Figure 9 shows the percentage of the reduced CPU time when the adaptation was employed compared to the procedure without adaptation for each load step. Table 3 presents the number of regions to compute RVEs in the adaptive iteration loop for load step 2 and the convergent behavior is roughly the same for every load step. The statistic show that the number of regions that do not need to compute the RVEs increased after the third iteration steps and can be as high as 60% of the total number of regions in the mesh. Figure 8 shows the regions that updated RVE computation with respect to those used the previous configurations at the third iteration step in load step 2. The curve in Fig. 9 indicated that approximately 30% CPU time can be saved. Achieving additional computational efficiency through equally dynamic re-distribution of the RVEs over the processors to achieve load balance is under investigation.

Table 3 Regions computing with/without RVEs in load step 2
Fig. 8
figure 8

Regions with/without updating RVEs at iteration step 4 in load step 2

Fig. 9
figure 9

CPU saving time for the mixed topology mesh with adaptation

7 Conclusion

An averaging-theory based multiscale methodology to studying the mechanical behavior of soft tissues was developed in a MCTK. The model accounts directly for the collagen microstructure as well as for the interactions among the fibers that are important to determine the mechanical response of collagenous materials. The component-based multiscale framework is capable of dealing with any 3D curved geometry. Parallelization and adaptivity made possible the solution of problems consisting of millions of degrees of freedom. More complete adaptive strategies and predictive load balance are under investigation to increase further the computational efficiency.