## I. INTRODUCTION

Many biological systems show viscoelastic behavior: their responses to mechanical deformation show both elastic and viscous characteristics. When, in the first half of the 20th century, early biophysicists, such as Hill and Wyman, began to systematically characterize the viscoelastic mechanics of tissue, they sought to develop models that would be as simple as possible and yet could adequately describe the experimentally observed results. Today, the established framework to describe viscoelastic systems is a combination of linear springs (elastic elements) and linear dashpots (viscous elements). Figure 1 shows 3 of the most fundamental viscoelastic models that are routinely used to describe the mechanical behavior of cells (1) and tissue (2): the Maxwell model (Fig 1A); the Voigt model (sometimes also called the Voigt–Kelvin model; Fig 1B); and the Zener model (also found in the literature as standard linear solid or the Kelvin model; Fig 1C).

Even though these simple linear models cannot fully recapitulate the complexity of real biological structures, they were nonetheless fundamental to the development of mechanobiology and are still useful today. Hill famously investigated the mechanics of skeletal muscle and developed a simple viscoelastic model consisting of 3 elements, which could adequately describe the viscoelastic behavior he observed over decades of experimentation (3, 4). From the observation that an isolated frog skeletal muscle under isometric conditions instantly shortened as soon as the length constraints were removed (“quick-release experiment”), Hill deduced that a mechanical muscle model must include an elastic element in a series (5). From investigating the force and velocity relation of active muscles, he concluded that there must also be a damping element in series to the elastic element (6, 7).

In more recent studies, simple viscoelastic models are often used as a basis for a more complex modeling of biological matter. Applications range from the molecular to the macroscopic level, e.g., for the characterization of the mechanics and acting forces at focal adhesions (8), cells (9), intermediate filaments (10), ankle ligaments (11), and lung tissue (12).

The cytoskeleton is a good example to illustrate the implications of viscoelasticity on the function of different levels of structural hierarchy. On a molecular level, stiffness and force generation in muscle cells (and to a considerable degree also in nonmuscle cells) is attributable to actomyosin bridge formation (13). The elastic properties of the actomyosin bridges, in turn, are attributable mostly to the enthalpic elasticity of the S2-domain, the hinge region between the myosin head and tail (14). Upon bond breakage, any elastic energy is dissipated, giving rise to frictional properties (15).

Cross-linking molecules other than myosin allow actin and other cytoskeletal filaments (microtubules, intermediate filaments) to form networks, which by similar enthalpic and bond breakage mechanisms, as in actomyosin bridges, exhibit elastic and dissipative properties (16). Moreover, cytoskeletal filaments exhibit thermal fluctuations, giving rise to entropic elastic properties (17), and because these fluctuations occur in the aqueous environment of the cytosol, viscous friction follows (18).

The simultaneous existence of both elastic and dissipative properties is a universal property of all solid matter, biological and nonbiological, as noted by Kohlrausch (19) when he observed the creep behavior of silk threads, metal wires, and glass fibers. The investigation of the viscoelastic properties of biological matter in particular has led to scientific findings that go beyond the mere characterization of material properties. For example, it has long been established that blood, due to cellular components, has not only viscous but also elastic properties (20). The viscoelastic properties of blood samples can be used to estimate the mechanics of erythrocytes (21), alterations of which may be indicative of certain diseases, such as malaria (22).

As an example, at a higher structural level, artery walls are routinely represented as spring and dashpot models to account for viscoelastic properties (e.g., hysteretic properties in the stress–strain relationship during wall expansion and contraction due to blood pressure changes) (23). Viscoelastic modeling is an important tool for understanding arterial diseases and for developing treatment options (24).

With only a few simple elements, viscoelastic models can describe the mechanical responses of a wide range of biological matter. They are, therefore, part of the basic syllabus of lectures on biomechanics, regardless of the field of study. For example, the Hill muscle model can be taught from a purely physiological point of view in a medical lecture class, it can be used as a starting point for teaching the molecular biophysics of motor proteins, or it can serve as an example in a teaching unit for students with an engineering background in which students code their own computer simulations (25). As another example, a hands-on practical class has recently been described in which students build a low-cost tensile testing system, investigate the load and deformation behavior of different materials, and describe it with the Kelvin model (26). Teachers can find a good introduction into the concepts of viscoelastic modeling in the textbook by Howard (27). For courses particularly on biophysics, it is worth looking at the textbooks by Fung (2), Jacobs et al. (28), and McMahon (14), the latter of which offers a detailed description about Hill's findings on muscle mechanics.

Although the mechanical behavior of a single spring and a single dashpot is simple, the behavior of linear combinations of these 2 elements can quickly become surprisingly complicated. To give students a more intuitive understanding of this fundamental concept of biomechanics, we developed an elastic viscous system simulator (ElViS) that is intended as an interactive hands-on tool for teaching and understanding viscoelastic systems. With ElViS, students can build viscoelastic systems consisting of springs, dashpots, and internal force generators and investigate responses to external forces and deformations in a virtual lab. The software is written in the JavaScript programming language so that the lecturer can host it on a server for students to access it via a standard web browser, without the need to install additional software.

We provide the source code for ElViS in an online repository (https://github.com/rgerum/ElViS) under an open MIT license. The software framework can be used to program custom teaching modules involving viscoelastic systems. To demonstrate this, we developed a gamelike online lesson unit using ElViS, in which the user plays through 13 levels, starting with the basics of springs and dashpots and ending with the Hill muscle model. This lesson can be used out of the box as an introduction to viscoelastic systems without requiring students or lecturers to have programming skills. It is best suited for undergraduate courses in biophysics or biomechanics, under supervision in a classroom setting, or as an online homework assignment. We let students of an undergraduate course on biomechanics (aimed at bachelor's and master's students) test the ElViS lesson as an online homework unit, and the subsequent evaluation indicates that the students gained a better understanding of the principles of viscoelastic modeling.

The electronic-learning (e-learning) lesson presented here is intended as a teaching unit to introduce the basic principles of viscoelastic modeling and to give students an intuitive understanding of creep and stress relaxation responses. In a subsequent lesson within a curriculum on viscoelastic systems, students will typically derive the differential equations that describe linear spring–dashpot networks. They will then go on to solve them for simple cases (e.g., the response to a force step) in the time domain and can use ElViS to verify that the results are correct. Next, and beyond what the interactive framework presented here covers, a typical curriculum might introduce the Laplace transform to more efficiently compute the steady-state response of viscoelastic systems to oscillatory forces and deformations.

## II. SCIENTIFIC AND PEDAGOGIC BACKGROUND

The standard way of teaching viscoelastic modeling is to first introduce the 2 main building blocks: springs and dashpots. Springs (Hookean elements) display elastic properties and obey Hooke's law
\(\def\upalpha{\unicode[Times]{x3B1}}\)\(\def\upbeta{\unicode[Times]{x3B2}}\)\(\def\upgamma{\unicode[Times]{x3B3}}\)\(\def\updelta{\unicode[Times]{x3B4}}\)\(\def\upvarepsilon{\unicode[Times]{x3B5}}\)\(\def\upzeta{\unicode[Times]{x3B6}}\)\(\def\upeta{\unicode[Times]{x3B7}}\)\(\def\uptheta{\unicode[Times]{x3B8}}\)\(\def\upiota{\unicode[Times]{x3B9}}\)\(\def\upkappa{\unicode[Times]{x3BA}}\)\(\def\uplambda{\unicode[Times]{x3BB}}\)\(\def\upmu{\unicode[Times]{x3BC}}\)\(\def\upnu{\unicode[Times]{x3BD}}\)\(\def\upxi{\unicode[Times]{x3BE}}\)\(\def\upomicron{\unicode[Times]{x3BF}}\)\(\def\uppi{\unicode[Times]{x3C0}}\)\(\def\uprho{\unicode[Times]{x3C1}}\)\(\def\upsigma{\unicode[Times]{x3C3}}\)\(\def\uptau{\unicode[Times]{x3C4}}\)\(\def\upupsilon{\unicode[Times]{x3C5}}\)\(\def\upphi{\unicode[Times]{x3C6}}\)\(\def\upchi{\unicode[Times]{x3C7}}\)\(\def\uppsy{\unicode[Times]{x3C8}}\)\(\def\upomega{\unicode[Times]{x3C9}}\)\(\def\bialpha{\boldsymbol{\alpha}}\)\(\def\bibeta{\boldsymbol{\beta}}\)\(\def\bigamma{\boldsymbol{\gamma}}\)\(\def\bidelta{\boldsymbol{\delta}}\)\(\def\bivarepsilon{\boldsymbol{\varepsilon}}\)\(\def\bizeta{\boldsymbol{\zeta}}\)\(\def\bieta{\boldsymbol{\eta}}\)\(\def\bitheta{\boldsymbol{\theta}}\)\(\def\biiota{\boldsymbol{\iota}}\)\(\def\bikappa{\boldsymbol{\kappa}}\)\(\def\bilambda{\boldsymbol{\lambda}}\)\(\def\bimu{\boldsymbol{\mu}}\)\(\def\binu{\boldsymbol{\nu}}\)\(\def\bixi{\boldsymbol{\xi}}\)\(\def\biomicron{\boldsymbol{\micron}}\)\(\def\bipi{\boldsymbol{\pi}}\)\(\def\birho{\boldsymbol{\rho}}\)\(\def\bisigma{\boldsymbol{\sigma}}\)\(\def\bitau{\boldsymbol{\tau}}\)\(\def\biupsilon{\boldsymbol{\upsilon}}\)\(\def\biphi{\boldsymbol{\phi}}\)\(\def\bichi{\boldsymbol{\chi}}\)\(\def\bipsy{\boldsymbol{\psy}}\)\(\def\biomega{\boldsymbol{\omega}}\)\(\def\bupalpha{\bf{\alpha}}\)\(\def\bupbeta{\bf{\beta}}\)\(\def\bupgamma{\bf{\gamma}}\)\(\def\bupdelta{\bf{\delta}}\)\(\def\bupvarepsilon{\bf{\varepsilon}}\)\(\def\bupzeta{\bf{\zeta}}\)\(\def\bupeta{\bf{\eta}}\)\(\def\buptheta{\bf{\theta}}\)\(\def\bupiota{\bf{\iota}}\)\(\def\bupkappa{\bf{\kappa}}\)\(\def\buplambda{\bf{\lambda}}\)\(\def\bupmu{\bf{\mu}}\)\(\def\bupnu{\bf{\nu}}\)\(\def\bupxi{\bf{\xi}}\)\(\def\bupomicron{\bf{\micron}}\)\(\def\buppi{\bf{\pi}}\)\(\def\buprho{\bf{\rho}}\)\(\def\bupsigma{\bf{\sigma}}\)\(\def\buptau{\bf{\tau}}\)\(\def\bupupsilon{\bf{\upsilon}}\)\(\def\bupphi{\bf{\phi}}\)\(\def\bupchi{\bf{\chi}}\)\(\def\buppsy{\bf{\psy}}\)\(\def\bupomega{\bf{\omega}}\)\(\def\bGamma{\bf{\Gamma}}\)\(\def\bDelta{\bf{\Delta}}\)\(\def\bTheta{\bf{\Theta}}\)\(\def\bLambda{\bf{\Lambda}}\)\(\def\bXi{\bf{\Xi}}\)\(\def\bPi{\bf{\Pi}}\)\(\def\bSigma{\bf{\Sigma}}\)\(\def\bPhi{\bf{\Phi}}\)\(\def\bPsi{\bf{\Psi}}\)\(\def\bOmega{\bf{\Omega}}\)\begin{equation}\tag{1}{F_{{\rm{spring}}}} = k \cdot \delta \end{equation}
where *F*
_{spring} is the force acting on the spring, *k* is the spring constant, and *δ* is the deformation of the spring. Dashpots (Newtonian, viscous, or frictional elements) are used to model the viscous or more generally the dissipative properties of fluids. The force *F*
_{dashpot} that is needed to deform a dashpot with a constant velocity *v* is given by the equation of motion for Newtonian fluids
\begin{equation}\tag{2}{F_{{\rm{dashpot}}}} = \gamma \cdot v\end{equation}
whereby *γ* is the damping (or drag) coefficient. The mass of the system can be neglected for overdamped motion, which is typically assumed for models of biological matter. For instance, for a Voigt body (see Fig 1B) that is connected to a mass *m* in a series, the overdamped approximation is valid for *γ*
^{2} ≫ 4*mk* (27). It is instructive for students to verify the overdamped approximation, for instance, for a protein in water with a mass in the order of 100 kDa and a stiffness on the order of 1 pN/nm.

To model biological matter with both viscous and elastic properties, one can connect the spring and dashpot elements with each other. The connection points (nodes) can either be movable or fixed. Movable nodes imply that the deformations of elements connected to that node have the same total value. Fixed nodes are used to connect elements to a static rigid structure with infinite stiffness (e.g., a wall).

Analogous to electrical circuits, linear elements can be connected in series or in parallel. For instance, the Voigt body (dashpot and spring in parallel) represents a compliant object that is deformed in a viscous fluid. To calculate the total force or displacement of a viscoelastic system, students must first understand some basic rules of how forces and deformations are distributed between serial and parallel elements. In the following, we consider only connections of linear elements via movable nodes. As a direct consequence of Newton's third law, the forces *F*
_{1} and *F*
_{2} acting on 2 (massless) linear elements connected in series are the same and have the same absolute value as the total force of the arrangement *F*
_{series}. The total force of 2 linear elements connected in parallel *F*
_{parallel} is the sum of the individual forces.
\begin{equation}\tag{3a}{F_{{\rm{series}}}} = {F_1} = {F_2}\end{equation}
\begin{equation}\tag{3b}{F_{{\rm{parallel}}}} = {F_1} + {F_2}\end{equation}

It can be intuitively understood that the total deformation of 2 elements in a series *δ*
_{series} must be the sum of the individual deformations *δ*
_{1} and *δ*
_{2}, whereas the total deformation of 2 elements in a parallel arrangement *δ*
_{parallel} must be equal to the individual deformations.
\begin{equation}\tag{3c}{\delta _{{\rm{series}}}} = {\delta _1} + {\delta _2}\end{equation}
\begin{equation}\tag{3d}{\delta _{{\rm{parallel}}}} = {\delta _1} = {\delta _2}\end{equation}

Using Eqs. 3a–3d, as well as Hooke's law (Eq. 1), students should be able to deduce that the total spring constant of a parallel arrangement of 2 springs *k*
_{parallel} must be the sum of the individual spring constants *k*
_{1} and *k*
_{2}. For series arrangements, the total compliance (1/*k*
_{series}) is the sum of the individual compliances.
\begin{equation}\tag{4a}{k_{{\rm{parallel}}}} = {k_1} + {k_2}\end{equation}
\begin{equation}\tag{4b}1/{k_{{\rm{series}}}} = 1/{k_1} + 1/{k_2}\end{equation}

The total damping coefficient of 2 dashpots in serial and parallel arrangements behave analogous to Eqs. 4a and 4b. Also, Eqs. 3a–3d and Eqs. 4a and 4b can be expanded for an infinite number of serial or parallel elements.

The mechanical behavior of the viscoelastic model is described by the response function, which links the input to the system (e.g., a change in force) with its output (e.g., total deformation). To find the response function, one needs to use Eqs. 3a–3d and Eqs. 4a and 4b to derive a differential equation that describes the whole system. For complex interconnected viscoelastic models with many linear elements, it is useful to divide the arrangement into subsystems, derive the total forces, and spring constants of these subsystems and recompose them into expressions for the entire model. However, even if the response function is found, it might be difficult to solve the differential equation for a given force or deformation input by using pen and paper. One common trick is to transform the response function (and the input function) into the Laplace domain (29). For typical forms of force or deformation inputs, such as the Heaviside step function or the Dirac delta function, the Laplace representations can be found in lookup tables (30), and it can be easier to derive the response of the viscoelastic answer in the Laplace domain and then retransform it into the time domain than it would be to solve the differential equation in the time domain.

Although manually solving the response of viscoelastic systems can be a good exercise for students (e.g., with a background in physics or engineering), it is also an ideal opportunity for teaching computer-based numeric approaches (25). Even if the focus and schedule of the teaching unit does not allow for longer programming tasks for the students, numeric computer simulation programs can be useful to strengthen the student's intuitive understanding of viscoelastic systems. Therefore, a simulation program is desirable in which students can design viscoelastic model systems and test the response to different inputs. We present such a program with the ElViS in this article.

## III. MATERIALS AND METHODS

### A. Software description

ElViS uses a JavaScript framework (on the basis of the D3.js library) (31) for creating viscoelastic systems and for numerically solving the response to input forces and displacements and for visualization. Supplemental Material S1 describes the mathematical details for calculating the mechanical reaction of viscoelastic systems.

In brief, a system consisting of *N* nodes that connect massless linear elements is represented by a system of linear equations. Each node is characterized at every discrete time point *t* by a displacement
\(\delta _i^t\)
and a force
\(F_i^t\)
. Its velocity *v* is defined indirectly as
\begin{equation}\tag{5}v_i^t = \left( {x_i^t - x_i^{t - 1}} \right)/\Delta t\end{equation}

This indirect coding of speed has the advantage that the mechanics of the viscoelastic system can be described with less equations compared with having separate equations for *x* and *v*. Also, problems with infinite speeds, which can result from jumps in the system input, are eliminated (this is, for example, a problem with the sudden deflection of a single spring). As described in section II, nodes can either be fixed or free. For fixed nodes, the displacement is provided as a boundary condition, and the force
\(F_i^t\)
is an unknown variable. For free nodes, the force is provided as a boundary condition, and the displacement
\(\delta _i^t\)
is an unknown variable. The system of linear equations is then solved analytically for these unknown variables by using a matrix inversion. For each time step *t*, this analytic solution is used to calculate the forces
\(F_i^t\)
of the fixed nodes and the displacements
\(\delta _i^t\)
of free nodes.

The source code is available as open-source software under the MIT license at GitHub. We give 2 example programs that can be realized with the ElViS framework: an open mode, where students can freely create viscoelastic systems in a drag and drop editor and simulate the answers to different inputs and an interactive lesson in 13 levels that teaches the basic concepts described in section II and ends with a final level about the Hill muscle model. Both the open mode (https://rgerum.github.io/ElViS/) and the lesson (https://rgerum.github.io/ElViS/question.html) can be tried on GitHub.

In the open mode, all features of ElViS are demonstrated. Supplemental Video S1 gives a short overview of the features of the open mode. The graphical user interface is shown in Figure 2. In the drag and drop editor (Fig 2A), the user can create a new spring by clicking at a node, keeping the mouse clicked, moving the cursor somewhere else, and releasing the mouse when a new node appears. Parallel arrangements are created by releasing the mouse at another existing node. When users create a new spring, they can click on it and change its properties in the element properties menu (Fig 2B), where it can be changed into a dashpot or an internal force generator. It is also possible to change the spring constant, damping coefficient, or amplitude force, respectively. This way, one can create complex arrangements of linear elements in series or in parallel.

As an alternative approach to design a custom model system, the user can select and combine 5 preconfigured basic viscoelastic systems from the example menu (Fig 2C): a single spring; a single dashpot; a Maxwell body; a Voigt body; and a Kelvin body. In the input menu, (Fig 2D), the user can change between an input force and displacement and can change the shape of the input (rectangle, delta peak, theta function, or ramp), as well as its amplitude and time course. By selecting a ramp input and changing the duration and amplitude, the user indirectly varies the speed at which the force or deformation acts on the system. In this way, ElViS allows students to explore the velocity dependence of viscoelastic systems and to understand how dashpots, unlike springs, respond to the velocity of imposed deformations.

The simulation panel (Fig 2E) shows a plot of both the input and calculated response of the system, the latter of which will update instantaneously as one changes system and input parameters. By clicking on the play button (Fig 2F), the user can start a visual dynamic simulation of the mechanical response of the system, which affects both the system's sketch in the drag and drop editor and the plots in the simulation panel. Finally, in the simulation time range menu (Fig 2G), the user can change the simulation start and endpoint, as well as the time intervals of the numeric calculation.

On the basis of the ElViS framework and its possibilities for creating and simulating viscoelastic systems, we also created an interactive online lesson consisting of 13 levels, teaching the basics of viscoelastic modeling. The lesson includes design elements adapted from computer games to increase the students' motivation during the work process, a concept called gamification (32). The gamification design principles used here are levels, progress bars, immediate feedback, and the possibility of multiple attempts to solve a level. The lesson takes about 20 min in total. The first 10 levels teach students the main building blocks of viscoelastic modeling described in section II (i.e., how forces, deformations, spring constants, and damping coefficients add up in series and in parallel. The last 3 levels introduce the Maxwell body, the Voigt body, and the Hill 3-element muscle model.

As an example, Figure 3 shows the user interface of the first level that teaches Hooke's law. In the task windows (Fig 3A), students are given a short explanatory text about the level's problem. The heart of each level is the virtual lab (Fig 3B), where students are presented with a viscoelastic system (a single spring), as well as the appropriate plots for an input (displacement in blue) and output (force in red) signal. Typically, the task of a level is to find the equation that relates the input to the output of the viscoelastic system by varying and combining the system's parameters (the spring constant *k*) and the input amplitude (the total displacement *d*) with mathematical operators (+, −, *, /, =), and observing the output until it matches the correct response (Hooke's law).

Alternatively, the task in some of the levels is to construct a viscoelastic model that explains a given input–output relationship by using the drag and drop editor. If the user input in the form of an equation or a viscoelastic model is correct, the level is completed, a short summary window (Fig 3D) recapitulates the learned material, and the student proceeds to the next level.

### B. Survey design

We asked students of an undergraduate course in biophysics to take the ElViS lesson, and subsequently, we evaluated their experience with an online survey. All students voluntarily participated in the lesson and subsequent survey. Before the start of the survey, all students gave their written consent to the publication of anonymized survey results. The wording of the consent form can be found in Supplemental Material S2. The survey was designed following principles for an effective evaluation of e-learning methods (33–35). We avoided negative questions or statements (such as “ElViS is not difficult to use”). First, students answered several background questions about previous exposure to viscoelastic modeling. In addition, we asked whether students had watched the lecture videos on viscoelastic modeling (which was part of the biophysics course), whether they participated in the corresponding online exercises, and whether they continued to study the topic on their own, beyond the scope of the course. The students then rated different statements in 4 categories on a scale from 1 (strongly disagree) to 5 (strongly agree). The question categories were the following: technical quality of ElViS, educational quality of ElViS, content and information quality, and user satisfaction. At the end of the survey, the students were given the opportunity to express comments, suggestions, and criticism in a text input field.

The survey was conducted anonymously via a Google Forms document (Google LLC, Mountain View, CA). The link to the survey was only given to students who had successfully completed all levels of the ElViS lesson mode. All survey participants agreed to a privacy statement in which we informed them that the data will be collected anonymously, only be used for teaching and scientific purposes, and that the survey results might be statistically evaluated and presented in aggregated form in scientific publications.

### C. Survey results

The results of the background questions are presented in Table 1. Although the biophysics course is offered for both bachelor's and master's students, the survey showed that the majority of the survey participants were master's students in the fields of medical engineering, physics, integrated life sciences (an interdisciplinary natural science course), and life science engineering (biotechnology with an additional engineering focus). All students had previously taken a 2-semester introductory course in experimental physics. The vast majority of survey participants stated that they had regularly attended the biophysics online lectures and exercises and had, therefore, been exposed to the contents of the ElViS lecture.

The results of the student evaluation of the ElViS lesson are illustrated in Table 2 as mean and standard deviation (SD). The technical quality of ElViS was evaluated as consistently positive by the students. All statements in this category, such as “ElViS is easy to use,” “ElViS is interactive,” and *“*The ElViS lesson is well structured,” were rated, on average, with a score of more than 4. The most controversial statement in this section was “ElViS had a nice design,” which the students rated at 4.04 ± 0.99 (mean ± SD).

The section evaluating the educational quality of ElViS started with perhaps the single most important question of the survey: “Working with ElViS has increased my understanding of viscoelastic systems.” The students evaluated this statement with a score of 4.20 ± 0.91, which demonstrates the didactic success of the ElViS lesson. Interestingly, the majority of students agree with the statement that ElViS is a helpful addition to the existing classical course on biomechanics (mean: 4.36), and some students could even imagine that this interactive e-learning approach could completely replace the corresponding lecture (mean: 2.66). The students rated the level of difficulty of the ElViS lesson as rather easy but appropriate. In an additional question with a free input field (not shown in Table 2), the majority of students stated that they needed between 20 and 30 min (60 min maximum) to complete the ElViS lesson. The majority of students evaluated this time as acceptable (mean: 4.30).

The statement “Operating ElViS is intuitive without further instructions.” was evaluated with 3.80 ± 0.95. From the open comment section at the end of the evaluation, it became evident that some students had problems understanding how to use the drag and drop editors for creating viscoelastic systems. Two students reported that ElVis was not properly displayed in the browser (one student used Microsoft Edge, and the other student used a tablet). We could not reproduce the technical errors, but after the survey was completed, we implemented into the ElViS lesson an animated image that explains using the drag and drop editor.

The more general statements in the last survey section about user satisfaction confirm that overall, the students thought that the ElViS lesson was fun to use and valuable for educational success. On the basis of the student comments, we have fixed some minor bugs and implemented the following features in the current version of the ElViS lesson in addition to the improvements already mentioned: a progress bar that indicates how much of the lesson the user has already finished, the possibility to move backward to levels that the user already finished, and the possibility to skip a level, if the user repeatedly gives a wrong answer.

## IV. CONCLUSION

We developed a JavaScript framework (ElViS) for designing and simulating the mechanical behavior of viscoelastic systems consisting of springs, dashpots, and force generators. On the basis of this framework, we developed an interactive e-learning lesson that teaches the basics of viscoelastic modeling in biophysics. We evaluated the lesson in a survey of 50 students who had previously attended a lecture on biomechanics. The majority of students evaluated the technical and educational quality of the lesson as positive and stated that it increased understanding on the topic. The survey shows that students appreciated the interactive e-learning lesson as a valuable addition to a classical lecture on viscoelastic systems but not as a replacement.