# Ausbreitungsmodell Austal 86 # Maple Script, Januar 2007 restart: with(student): with(plots): # Austal 86 Model # sigma_y := F*x^f; # sigma_z := G*x^g; # Gauss-Gleichung (ein dimensional) # c := Q/(Pi*u*sigma_y*sigma_z) * exp( -h_e^2/(2*sigma_z^2) ); c := x -> Q/(Pi*u * F*x^f * G*x^g ) * exp( -h_e^2/(2* (G*x^g)^2 ) ); # Gegebene Variablen h_e := 50 ; # m c_0 := 180 ; # mg/m^3 Fl := 9000 ; # m^3/h u := 1.3 ; # m/s # Wie weit plotten (Bereich von x)? r := 1000 ; # m # Umrechnen in SI-Einheiten c_0 := c_0 ; # mg/m^3 Fl := Fl * 1/60 * 1/60 ; # m^3/s # Quellstärke Q := Fl * c_0 ; # mg/s # Ausbreitungsklassen # (Bezeichnung, F, f, G, g, linestyle, Farbe) Klasse("V") := ["sehr labil", 1.503, 0.833, 0.151, 1.219, 2, red]; Klasse("III/2") := ["neutral", 0.659, 0.807, 0.165, 0.996, 3, green]; Klasse("II") := ["stabil", 0.801, 0.754, 0.264, 0.774, 4, blue]; # Schlaufe über die Einträge in Klasse_Bezeichnung Klasse_Bezeichnung := {"V", "III/2", "II"}; for Bezeichnung in Klasse_Bezeichnung do # Klasse wählen K_v := Klasse(Bezeichnung); # Immer das selbe Name := K_v[1]: F := K_v[2]: f := K_v[3]: G := K_v[4]: g := K_v[5]: style := K_v[6]: colorname := K_v[7]: Distanz[Bezeichnung] := fsolve(diff(c(x),x)=0): Konzentration[Bezeichnung] := c(Distanz[Bezeichnung])*1000: Graph[Bezeichnung]:=plot(c(x), x=0..r, linestyle=style, color=colorname, legend=Name): end do: # Alle Plot ausgeben display(Graph["V"], Graph["III/2"], Graph["II"], title="Immission eines Hochkamins", labels=["Entfernung vom Kamin [m]", "Konzentration [mg/(s*m)]"], labeldirections=[HORIZONTAL, VERTICAL]); # Legende (legend) wird nicht ausgegeben (BUG?). Eigene Legende erstellen printf("Legende:\tWetterlage \tFarbe\tMaximum (Aufpunkt) [m] Konzentration[mug/(m^3)]\n"); for Bezeichnung in Klasse_Bezeichnung do printf("\t%-12s\t%-8s\t\t %5.1f\t %f\n", Klasse(Bezeichnung)[1], Klasse(Bezeichnung)[7], Distanz[Bezeichnung], Konzentration[Bezeichnung]); end do: