Seite 1 von 1

Algebraische Flächen

Verfasst: Montag 19. Juni 2023, 18:31
von hubertgrassmann
Ich habe ein kleines Script hergestellt, vielleicht gefällt es jemandem.

Re: Algebraische Flächen

Verfasst: Montag 19. Juni 2023, 18:35
von hubertgrassmann

Code: Alles auswählen

[code]
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from matplotlib import cm
import numpy as np

fig = plt.figure()
ax = fig.add_subplot(projection='3d')
plt.xticks([])
plt.yticks([])

def limit3d(mi, ma): #3d Grenzen: min, max
ax.set(xlim=[mi, ma], ylim=[mi, ma], zlim=[mi, ma])

lim = 5
limit3d(-lim,lim)

def fl(m,n,a,b,c):
X = np.arange(-lim,lim, 0.01)
Y = np.arange(-lim,lim, 0.01)
X, Y = np.meshgrid(X, Y)
Z = np.sqrt((X**m/a + Y**n/b + c))
zm = - Z
surf = ax.plot_surface(X, Y, Z, cmap=cm.coolwarm)
surf = ax.plot_surface(X, Y, zm, cmap=cm.RdBu)

fl(5,2,2,4,-1)
plt.show()[/code]

Re: Algebraische Flächen

Verfasst: Montag 19. Juni 2023, 18:38
von hubertgrassmann
Es gelingt mit nicht, den Code mit den angebrachten indents zu versenden; es gibt ja nur eine Funktion, das ist sicher schnell zu korrigieren.

Re: Algebraische Flächen

Verfasst: Montag 19. Juni 2023, 19:36
von Qubit
hubertgrassmann hat geschrieben: Montag 19. Juni 2023, 18:38 Es gelingt mit nicht, den Code mit den angebrachten indents zu versenden; es gibt ja nur eine Funktion, das ist sicher schnell zu korrigieren.
So?..

Code: Alles auswählen

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm

fig = plt.figure()
plt.xticks([])
plt.yticks([])

lim = 5

X = np.arange(-lim,lim, 0.01)
Y = np.arange(-lim,lim, 0.01)
X, Y = np.meshgrid(X, Y)

ax = fig.add_subplot(projection='3d')

def limit3d(mi, ma): #3d Grenzen: min, max
    ax.set(xlim=[mi, ma], ylim=[mi, ma], zlim=[mi, ma])

def fl(m,n,a,b,c):
    Z = np.sqrt((X**m/a + Y**n/b + c))
    ax.plot_surface(X, Y, Z, cmap=cm.coolwarm)
    ax.plot_surface(X, Y, -Z, cmap=cm.RdBu)

limit3d(-lim,lim)

#fl(5,2,2,4,-1)
fl(m=2,n=2,a=1,b=1,c=0)
plt.show()

Re: Algebraische Flächen

Verfasst: Dienstag 20. Juni 2023, 11:30
von hubertgrassmann
Ja, danke.
Spannend wird es, wenn nicht m=n=2 gewählt wird, oder wenn man in der Z-Zeile zwischen die Klammern (( den Aufruf abs einfügt (aber dann ist es keine "algebraische" Fläche).

Re: Algebraische Flächen

Verfasst: Dienstag 20. Juni 2023, 12:10
von Kebap
Es gelingt mit nicht, den Code mit den angebrachten indents zu versenden
Das ist schnell zu korrigieren.
Es darf vor und nach dem Code nur jeweils 1x der Befehl stehen, der durch den Knopf automatisch eingefügt wird.
Im obigen Fall wurde der Knopf anscheinend versehentlich 2x angeklickt. Dadurch kommt der Ende-Befehl zu früh.