/* Variablendeklaration */ ... var M; // dyn. Maßstab var x, vx; // Objektkoordinaten var y, vy; ... var t = 0; // Zeit var dt; // Zeitquant - wird auf die Bildwechselrate bezogen var frmRate; // Fliesskommadarstellung für Kehrwertbildung notwendig! ... var g = 9.81; var rho = 1.3; // Luftdichte in kg/m³ var cw = 0.1; // cw-Wert Vollkugel bei v > 5 m/s var d = 0.4; // Balldurchmesser var mBall = 0.45; // Ballmasse in kg var tau; // Zeitkonstante function setup() { ... } function draw() { ... //*************************************** Berechnung der Bewegung *************************************** if (START) { ... x = x0; y = y0; vx = vx0; vy = vy0; tau = mBall/(rho*cw*PI*sq(d/2)); // Zeitkonstante nach Newton } else { /* Berechnung der Zeitfunktionen */ var vx_ = vx; // Geschwindigkeitswert merken wegen Verkopplung vx = vx - (vx*sqrt(sq(vx)+sq(vy))/(2*tau))*dt; // I. Integration vy = vy - (vy*sqrt(sq(vx_)+sq(vy))/(2*tau) + g)*dt; x = x + vx*dt; // II. Integration y = y + vy*dt; ... } //****************************************** Darstellung ************************************************ // Hier wird in Metern gerechnet! ... ellipse(kXi(x*M), kYi(y*M), 4*d*M, 4*d*M); // Ball }