The lowest level represented in these simulations is the individual mtDNA molecule. The basic data structure is a vector of integer values, with each element of the vector representing a particular mtDNA molecule in the simulated cell. Call this data structure DNA(1,..., N). A typical simulation will have 1,000 to 10,000 mtDNA molecules (in one cell). The integer values of the vector are used to represent the mutation state of that mtDNA molecule. A value of "0" denotes a wild-type mtDNA molecule; higher integer values denote various mutations. The coding of the mutations depends on the particular application of the simulation, but for an aging simulation, typically "1" represents the first acquired mutation to appear and is carried by all the descendants of that molecule, the value "2" denotes the second mutation to appear, and so on.
If you wish to define any characteristics of each acquired mutation, such as the list of genes affected as in Table 48.1, then this can be handled by a separate data structure. The important design point is that these mutation characteristics should not be recorded directly in your data structure DNA(1, ..., N), since we expect that many of the elements of this data structure will be clonal expansions of one or two separate mutation events, and that would waste memory space and slow the simulation. Instead the mutation characteristics should be stored in a separate array that can be indexed by the integer value stored in the vector DNA(1, ..., N), recording the identity of the original mutation event.
One mutation characteristic that we have found very useful to record is the time of the original mutation event. With this data we were able to look at the mutations found in the simulated cell at age 80 years and determine the distribution of ages when the original mutation event occurred. The surprising result was that the majority of the mutations found in the simulated 80-year-old cell were acquired before the age of 20 years (Elson et al., 2001). The ability to "tag" individual DNA molecules with information such as the mutation date allows you to gather data that is simply impossible to acquire in a real experiment.
The modeling of mtDNA replication, degradation, and cell divisions in the mtDNA level simulations is fairly simple. The number of each event occurring in a timestep of length At is calculated from Eqs. 1 through 7. Typically we use a time step of one hour (so that 100 years requires less than 1 million time steps, a reasonable amount). For example, say that in one time step 23 mtDNA molecules are destroyed and 27 are copied. First, we would randomly choose 23 elements of the data structure DNA(1, ..., N) to remove, modeling degradation. The data structure is then compressed from N elements to N-23 elements, to remove the empty spaces. Then, 27 elements of the vector DNA(1, ..., N) are chosen at random for replication. The new mtDNA molecules are added at the end of the vector, and their attributes such as the mutation value are copied from the parent mtDNA molecules. Any acquired mutations are calculated at this point, resulting in a change of the mutation state between the parent and offspring mtDNA molecules.
Note that there is no need to separate out the degradation or replication processes into mutant and wild-type mtDNA in this model. This occurs naturally through the random choice from the elements of the DNA(1, ..., N) vector, which contains both the mutant and mtDNA molecules.
Since the mtDNA replication and degradation processes are fundamentally random, the results for any one simulated cell are also stochastic. Therefore simulating a single cell is not sufficient. One must simulate a number of cells, and take statistics over the set of simulated cells. For the mtDNA Level simulations, the practical limit of the simulations is on the order of 1,000 simulated cells, over a time scale of one century for aging studies.
Was this article helpful?
Your heart pumps blood throughout your body using a network of tubing called arteries and capillaries which return the blood back to your heart via your veins. Blood pressure is the force of the blood pushing against the walls of your arteries as your heart beats.Learn more...