Funktionen
Contents
Funktionen#
Syntax#
def my_function(x, y, a = 1):
""""
Hilfetext
""""
z = 3*x + 5*sin(y) + a
return z
Beispiel 1: Hello …!#
def my_hello(what):
"""
returns the string "Hello" concatenated with the input string
"""
text = "Hello, " + what + "!"
return text
my_hello("world")
'Hello, world!'
Beispiel 2: Fahrzeug auf ebener Fahrbahn#
Wir verwenden mit dem Befehl linspace
die Datenstruktur array, um die Strömungswiderstandskraft für unterschiedliche Geschwindigkeiten zu berechnen. Auf nicht ebener Strecke kommt die Gravitationskraft noch dazu.
Links:
import numpy as np
import matplotlib.pyplot as plt
Paramterwerte:
# Massse in kg
m = 110
# Erdbeschleunigung in m/s^2
g = 9.81
# Rollwiderstandsbeiwert
cr = 0.0055
# Strömungswiderstandskoeffizient
cw = 0.076
# Bezugsfläche in m^2
A = 0.41
# verschiedene Anströmgeschwindigkeiten in m/s
v = np.linspace(0, 20, num=20)
Strömungswiderstandkraft:
def F_Stroemung(cw, A, v, rho = 1.2041):
"""
Strömungswiderstandskraft in Abhängigkeit von
- Strömungswiderstandskoeffizient: cw
- Bezugsfläche: A in m^2
- Anströmgeschwindigkeit: v in m/s
- Dichte: rho in kg/m^3, Default= 1.2041 (Luft)
ist gegeben durch
F = cw*A*1/2*rho*v**2
"""
F = cw*A*0.5*rho*v**2
return F
F_S = F_Stroemung(cw, A, v, rho = 1.2)
F_S
array([0. , 0.02071579, 0.08286316, 0.18644211, 0.33145263,
0.51789474, 0.74576842, 1.01507368, 1.32581053, 1.67797895,
2.07157895, 2.50661053, 2.98307368, 3.50096842, 4.06029474,
4.66105263, 5.30324211, 5.98686316, 6.71191579, 7.4784 ])
Rollwiderstandskraft:
F_R = cr*m*g
F_R
5.93505
plt.figure(figsize=(5,3))
plt.plot(v, F_S, 'b', label='Strömung')
plt.hlines(F_R, min(v), max(v), color= 'r', label='Roll')
plt.xlabel('Geschwindigkeit [m/s]')
plt.ylabel('Strömungswiderstandskraft [N]')
plt.legend(loc='best')
plt.grid(True)
