/* Variablendeklaration */
var ODE_BDF;  // BDF-ODE-Solver 2. Ordnung für einfache DGl
function setup ()
  {
    ...
    /* Instanzierung von Klassen zu Objekten */
    ODE_BDF = new BDF_secondOrder(6, 16,  1e-10); // N = 6, Anzahl Rückweisungen R = 16, epsilon = 1e-10
    ...
 }
function draw()              // Hauptprogramm
  {
    ...
    //****************************************** Darstellung ************************************************
    feder.drawSpring(0, 0, 0, -y);
    fill('#0000ff');
    ellipse(kXi(0), kYi((-y-r)*M), 2*r*M, 2*r*M);
    ...
    //****************************************** Berechnung ************************************************
    if (START)
      {
        ...
        dt = 1/(I*frmRate);                    // Schritteite
        ...
        if (INIT)
          {
            ODE_BDF.BDFsO(f, true, y, vy, dt); // Initialisierung
            t = 0;
          }
      }
    else
      {
        for (var i = 0; i < I; i++)
          { // I-fache Wiederholung infolge Schrittweitensteuerung
            result = ODE_BDF.BDFsO(f, false, y, vy, dt);    // BDF 6-stufig
            y = result[0];
            vy = result[1];
          }
      }
    ...
 }
/***************************************** simple DGl 2. Ordnung ************************************************/
/* generalisierte grad-Funktion */
function f(y, vy)
  {
    return(g - 2*d*vy - sq(omega0)*(y-l0));
  }