Gelöste Aufgaben/COVI
Aufgabenstellung
Als Ingenieure können wir die COVID-19-Epidemie genauso modellieren, wie technische Systeme.
Wir brauchen dazu "Koordinaten" - also Messgrößen - die die Anzahl der Individuen erfassen, die
- ansteckbar "a",
- infiziert "i" - mit und ohne Sympthome - und
- genesen "r"
sind. Für jede dieser Koordinaten müssen wir nun "Bewegungsgleichungen" - also z.B. Differentialbeziehungen in der Zeit - hinschreiben.
Das nennen wir "Modellbildung".
Hier geht es um die Modellierung
Das Modell ist nicht dafür gemacht, um daraus quantitative Schlussfolgerungen zu ziehen. |
Diese algebraischen und Differentialgleichungen sind dabei nicht das Ergebnis von Gleichgewichtsbeziehungen wie in der Technischen Mechanik. Wir begnügen uns statt dessen damit, Phänomene der Epidemie mit unserer Mathematik zu erfassen.
|
Und so gehen wir vor:
Wir modellieren eine Grundgesamtheit von n0 = 80 Millionen Individuen.
Die Pandemie soll bei einer Durchseuchung von α=50% zum Stillstand kommen - die Individuen sind dann so weit voneinander entfernt, dass eine Ansteckung unwahrscheinlich ist.
Zum Zeitpunkt t0=0 seien von insgesamt n0 Individuen
i0=1000
infiziert.
Lösung mit Maxima
Header | |
---|---|
Wir lösen hier das Anfangswertproblem zu nichtlinearen Bewegungsgleichungen.
Diese Gleichungen haben wir nicht - wir entwickeln sie ad-hoc und achten nur darauf, zentrale Phänomene abzubilden. Eine Abbildung der realen Zahlen ist nicht beabsichtigt. |
/*******************************************************/
/* declare variational variables */
declare("δW", alphabetic); /* virtual work */
declare("δA", alphabetic); /* virtual work of implied external forces */
declare("δΠ", alphabetic); /* virtual strain energy */
declare("δu", alphabetic); /* variation of u */
declare("δw", alphabetic);
declare("δφ", alphabetic);
declare("δη", alphabetic);
declare("δθ", alphabetic);
declare("λ" , alphabetic); /* otherwise, this is the lambda fct. */
declare("μ" , alphabetic);
declare("Δr", alphabetic); /*displacement of material point [x,y,z] */
declare("δΔr",alphabetic); /* variation of Δr */
declare("δZ", alphabetic); /* variation of strain */
/*******************************************************/
/* parameters */
/* abbreviate: */
geometry : [h^3 = 12*I[y]/b, b^3 = 12*I[z]/h, b = A/h];
/* Lame's Constants */
/* see https://en.wikipedia.org/wiki/Hooke%27s_law */
lameConst : [λ = e*nu/((1+nu)*(1-2*nu)), μ = e/(2*(1+nu))];
/* relation: hook's law, modulus of elasticity */
/* see https://en.wikipedia.org/wiki/Hooke%27s_law */
E : matrix([2*μ+λ, λ, λ, 0, 0, 0],
[ λ, 2*μ+λ, λ, 0, 0, 0],
[ λ, λ, 2*μ+λ, 0, 0, 0],
[ 0, 0, 0, μ, 0, 0],
[ 0, 0, 0, 0, μ, 0],
[ 0, 0, 0, 0, 0, μ]);
/* Strain Displacement Relation */
/* see https://en.wikipedia.org/wiki/Hooke%27s_law */
StrainDispl(arg) := [epsilon[x,x] = diff(arg[1],x),
epsilon[y,y] = diff(arg[2],y),
epsilon[z,z] = diff(arg[3],z),
epsilon[x,y] = 1/2*(diff(arg[1],y) + diff(arg[2],x)),
epsilon[x,z] = 1/2*(diff(arg[1],z) + diff(arg[3],x)),
epsilon[y,z] = 1/2*(diff(arg[2],z) + diff(arg[3],y))]; |