1.4.1.I

Gegeben

../../../../_images/1.4.1.I.png

Größen: Siehe Bild.

Berechnen Sie die Schwerpunktposition

\[\begin{split}\begin{bmatrix} x_S\\ y_S \end{bmatrix} = \begin{bmatrix} \dots\\ \dots \end{bmatrix}\end{split}\]

Lösung

SymPy

Source Code eines Programms dazu:

from sympy.physics.units import kg, m, s
from sympy import pi, S, pprint, symbols, cos, sin, Matrix, integrate

# Units:
N         =  kg*m/s**2
k, M, G   =  10**3, 10**6, 10**9
kN        =  k*N
Pa        =  N/m**2
MPa, GPa  =  M*Pa, G*Pa
deg       =  pi/180
half      =  S(1)/2
cm        =  m/100

# Rounding:
def iso_round(x, pv):
    try:
        x = float(x)
        tmp = round(x, pv)
    except TypeError:
        x = x.evalf()
        from functools import partial
        func = partial(round, ndigits = pv)
        tmp = x.applyfunc(func)
    return tmp

# Printing:
def printout(x, unit=1, prec="nil", sub_list=[]):
    x = x.subs(sub_list)
    x /= unit
    try: 
        x = x.applyfunc(simplify)
    except:
        tmp = x.simplify()
        if tmp != None:
            x = tmp
    if prec != "nil":
        x = iso_round(x, prec)
    pprint(x)
    return

A = 4*cm**2

pprint("\nxS / cm:")
x, y = symbols("x, y")
Sx = integrate(x * (x/2 - 1*cm), (x, 2*cm, 6*cm))
xS = Sx/A
printout(xS, unit=cm, prec=2, sub_list=[])

pprint("\nyS / cm:")
Sy = integrate(y * (6*cm - 2*y), (y, 1*cm, 3*cm))
yS = Sy/A
printout(yS, unit=cm, prec=2, sub_list=[])

Programm ausführen? Dazu:

  1. Copy: Source Code in die Zwischenablage kopieren.

  2. Paste: Source Code ins Eingabefeld hinter [ ]: einfügen.

  3. Play: Knopf ▶ drücken.