org.simBio.core.integrator
Class RungeKuttaList

java.lang.Object
  extended by java.util.AbstractCollection
      extended by java.util.AbstractList
          extended by java.util.ArrayList
              extended by org.simBio.core.VariableList
                  extended by org.simBio.core.integrator.RungeKuttaList
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Iterable, java.util.Collection, java.util.List, java.util.RandomAccess

public class RungeKuttaList
extends VariableList

Runge-Kutta engine (& dt adjuster)

Version:
$Id: RungeKuttaList.java,v 1.2 2006/06/13 00:59:46 nsarai Exp $
Author:
Toshifumi Nishi, Nobuaki Sarai
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.simBio.core.VariableList
minDt, reactors
 
Fields inherited from class java.util.AbstractList
modCount
 
Constructor Summary
RungeKuttaList()
           
 
Method Summary
 void prepare(double min, double max, double dyY, double duration)
          call all Euler's start()
dt controlの閾値を設定し、全てのVariableのstart()を呼び出す。
 double update(double t)
          RungeKuttaの制御ルーチン 入力:t_n,dt_n 出力:(y_{n+1}),dt_{n+1} 現在は固定刻み幅だが,rk4を呼び出す部分を制御することにより 変動刻み幅のRungeKuttaにできるはず そのためにdt_{n+1}も出力するようにしている tは内部では変更しているが,値渡しなのでConductorのtはt=t_nのまま
 
Methods inherited from class org.simBio.core.VariableList
adjustDt, logIndented, setLinks
 
Methods inherited from class java.util.ArrayList
add, add, addAll, addAll, clear, clone, contains, ensureCapacity, get, indexOf, isEmpty, lastIndexOf, remove, remove, removeRange, set, size, toArray, toArray, trimToSize
 
Methods inherited from class java.util.AbstractList
equals, hashCode, iterator, listIterator, listIterator, subList
 
Methods inherited from class java.util.AbstractCollection
containsAll, removeAll, retainAll, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
containsAll, equals, hashCode, iterator, listIterator, listIterator, removeAll, retainAll, subList
 

Constructor Detail

RungeKuttaList

public RungeKuttaList()
Method Detail

update

public double update(double t)
RungeKuttaの制御ルーチン 入力:t_n,dt_n 出力:(y_{n+1}),dt_{n+1} 現在は固定刻み幅だが,rk4を呼び出す部分を制御することにより 変動刻み幅のRungeKuttaにできるはず そのためにdt_{n+1}も出力するようにしている tは内部では変更しているが,値渡しなのでConductorのtはt=t_nのまま

Specified by:
update in class VariableList
Parameters:
t -
Returns:
time step

prepare

public void prepare(double min,
                    double max,
                    double dyY,
                    double duration)
Description copied from class: VariableList
call all Euler's start()
dt controlの閾値を設定し、全てのVariableのstart()を呼び出す。

Overrides:
prepare in class VariableList
Parameters:
min - minimum time step
max - maximum time step
dyY - restrict maximum dy/Y and adjust time step
duration - to calculate
See Also:
VariableList.prepare(double, double, double, double)


Copyright © 2002-2008 Cell/Biodinamics simulation project. All Rights Reserved.