Author: Roman Chijner, Heidelberg
Date: 2012

Input N_P

      x    y   z
fx: tx   x   y
fy: x    ty  y
fz: x    y   tz

= :

◄

►

II←

Step =:

z_{min}= :

z_{max}= :

Zoom

N_P(≤1000) =:

Querschnittsplotter  3D  für implizite algebraische Oberflächen

.                                                           .






.

$\scalebox{1.4} \text{\copyright Roman Chijner, Heidelberg 2013}$
$\scalebox{1.3} \text{     Gestaltungshilfe:}\scalebox{1.3}\text{ Werner Knobloch}$

x

►

Methode:  Roots

Genauigkeit:

N_{V1}(≤1000) =:

N_{V2}(≤400) =:

x

Set Linienstärke 1-13:

→

►

◄

►

◄

 stehende  3D-Welle 

►

◄

f_a(x,y,z);

f_b(x,y,z);

f_c(x,y,z)

←X→

↑Y

Y↑

Z∙ 

z: 

Projektionsachse (PA):\; z

Animation

a/b

f_{l,m,n,s}(x,y,z) = \fgcolor{red}{f_a(x,y,z)} + \fgcolor{#009f00}{f_b(x,y,z)} +\fgcolor{#0000ff}{f_c(x,y,z) = 0

Methode: \fgcolor{red}{R}oots\fgcolor{red}{B}y\fgcolor{red}{L}ocus

bewegtes Rechteck +

Auflösung:

l =:

m =:

n =:

0

+

II←

Zoom +

Zoom -

Bildschirmausschnitt:
(blaue Punkte bewegen)

2

1

4

Ausschnitt Varianten:

Größe setzen

Spur setzen

Spur

Punkteigenschaften:

refresh

3

$f_a(x,y,z)=\; cos(\frac{l* x* \pi }{L})*[ cos(\frac{m* y* \pi}{L})*cos(\frac{n* x* \pi}{L})+s*cos(\frac{n* y *\pi}{L})*cos(\frac{m* x* \pi}{L})]$

$f_b(x,y,z)=\; cos(\frac{m* x* \pi }{L})* [cos(\frac{n* y* \pi}{L})*cos(\frac{l* x* \pi}{L})+s*cos(\frac{l* y *\pi}{L})*cos(\frac{n* x* \pi}{L})]$

$f_c(x,y,z)=\; cos(\frac{n* x* \pi }{L})* [cos(\frac{l* y* \pi}{L})*cos(\frac{m* x* \pi}{L})+s*cos(\frac{m* y *\pi}{L})*cos(\frac{l* x* \pi}{L})]$

-1

1

.                                                                 .
  











.

►

L=:

Intervall_{x,y}: [ -a_0,a_0]

refresh

   I. Spurplot                                                   




                                    


                

a) Linienplot

N_{V1}(≤5000) =:

b) Regionsfärbung

II. Feste Linien

I. Spurplot

Feste Punkt-Linien

      Ausschnitt             
      Hintergrund:    





           

  
  Plottfarben:                                                  




            

 stehende  3D-Welle - Querschnittsplott 

.                        
 

                     
  .

a_0 = 10 (slider from 5 to 40, step 5)
Ro = (-40, -40)
Rob: (200, y(Ro))
py = Ray(Ro, Rob)
Ro1 = Point(py)
Roa: (x(Ro), 200)
px = Ray(Ro, Roa)
Ro2 = Point(px)
Roo: (x(Ro1), y(Ro2))
Roo' = (40, 40)
Ro' = (-40, -40)
s = -1 (slider from -1 to 1, step 2)
ε = 0.5 (slider from 0 to 1, step 0.05)
t = -40 (slider from ta to tb, step Δt)
L = 20 (slider from 0 to 60, step 10)
n = 2 (slider from 0 to 17, step 1)
m = 5 (slider from 0 to 15, step 1)
l = 3 (slider from 0 to 10, step 1)
N_P = 200
b = false
z_{max} = 40 (slider from -40 to 40, step 0.1)
N_1 = If(b, N_P, 4)
z_{min} = -40 (slider from -40 to 40, step 0.1)
A000(x, y, z) = cos(l * x * π / L) * (cos(m * y * π / L) * cos(n * z * π / L) + s * cos(n * y * π / L) * cos(m * z * π / L)) + cos(m * x * π / L) * (cos(n * y * π / L) * cos(l * z * π / L) + s * cos(l * y * π / L) * cos(n * z * π / L)) + cos(n * x * π / L) * (cos(l * y * π / L) * cos(m * z * π / L) + s * cos(m * y * π / L) * cos(l * z * π / L))
f(x, y) = A000(x, y, t)
O = Intersect(yAxis, xAxis)
y_{min}: y(Ro')
y_{max}: y(Roo')
Textfeld1 = Textfield(t)
Δt = 1 (slider from -5 to 5, step 0.1)
inputBox2 = Textfield(Δt)
inputBox3 = Textfield(z_{min})
inputBox5 = Textfield(z_{max})
SFactor = 1 (slider from 0.5 to 2, step 0.1)
x_{max}: x(Roo')
tlmax1: x_{max}
tlmax2: y_{max}
x_{min}: x(Ro')
tlmin1: x_{min}
tlmin2: y_{min}
trmax1: y_{max}
trmax2: x_{max}
trmin1: y_{min}
trmin2: x_{min}
inputBox7 = Textfield(N_P)
Gr1: -2 * L * (1, 1)
Gr2: 2 * L * (1, -1)
Gr3: 2 * L * (1, 1)
Gr4: 2 * L * (-1, 1)
tt1 = Sequence(tlmin1 + (tlmax1 - tlmin1) / N_1 * i, i, 0, N_1)
tt2 = Sequence(tlmin2 + (tlmax2 - tlmin2) / N_1 * i, i, 0, N_1)
P2yyx = If(b, Join[Zip[Reverse[{Roots[f(x, b), trmin2, trmax2]}] + (0, b), b, tt2]], {(1000, 1000)})
poly1, a_1, b_1, c_1, d_1 = Polygon(Ro, Ro1, Roo, Ro2)
P1xxy = If(b, Join[Zip[Mirror[{Roots[f(a, x), trmin1, trmax1]}, y = x] + (a, 0), a, tt1]], {(1000, 1000)})
Px1: (x_{min}, 0)
Px2: (x_{max}, 0)
Py1: (0, y_{min})
Py2: (0, y_{max})
Pz1: (z_{min}, 0)
Pz2: (z_{max}, 0)
N_{V1} = 200 (slider from 0 to 10000, step 1)
m1 = 201 (slider from 1 to N_{V1} + 1, step 1)
dx: (x_{max} - x_{min}) / N_{V1}
dy: (y_{max} - y_{min}) / N_{V1}
dz: (z_{max} - z_{min}) / N_{V1}
xi: x_{min} + (m1 - 1) * dx
yi: y_{min} + (m1 - 1) * dy
zi: z_{min} + (m1 - 1) * dz
Ax = Point(Segment[Px2, Px1])
Ay = Point(Segment[Py2, Py1])
Az = Point(Segment[Pz2, Pz1])
fxx(x) = f(x, y(Ay))
fyy(x) = f(x(Ax), x)
B1xx = If(fxx(xi - ε / 2) * fxx(xi + ε / 2) < 0, (xi, y(Ay)))
B1yy = If(fyy(yi - ε / 2) * fyy(yi + ε / 2) < 0, (x(Ax), yi))
N_{V2} = 80 (slider from 0 to 500, step 10)
inputBox12 = Textfield(N_{V1})
inputBox13 = Textfield(N_{V2})
dx2: (x_{max} - x_{min}) / N_{V2}
dy2: (y_{max} - y_{min}) / N_{V2}
B = (0.07356189171039254, 0.054935288899808296)
dz2: (z_{max} - z_{min}) / N_{V2}
a = 4 (slider from 1 to 13, step 1)
da = false
db = false
dc = true
ta: z_{min}
tb: z_{max}
d = false
e = false
Bxx3 = If(fxx(xi) > 0, (xi, y(Ay)))
Bxx4 = If(fxx(xi) < 0, (xi, y(Ay)))
loc1xx = If(e, Locus[B1xx, Ay], Locus[Bxx3, Ay])
locxx2a = If(¬e, Locus[Bxx4, Ay])
loc1yy = If(e, Locus[B1yy, Ax])
Info1: "L=" + (LaTeX[L]) + "\:,\;  l=" + (LaTeX[l]) + "\;,\;  m=" + (LaTeX[m]) + "\; ,\; n=" + (LaTeX[n]) + " \; ,\;s=" + (LaTeX[s]) + ",\;ε=" + (LaTeX[ε]) + "\;,\;z_0=" + (LaTeX[t]) + ",\;\;Intervall_x=[" + (LaTeX[x_{min}]) + " ," + (LaTeX[x_{max}]) + " ];\; Intervall_y=[" + (LaTeX[y_{min}]) + " , " + (LaTeX[y_{max}]) + "];\;Intervall_z=[" + (LaTeX[z_{min}]) + " ," + (LaTeX[z_{max}]) + " ]"
o = true
Vieleck1, c, h, i, p = Polygon(Gr1, Gr2, Gr3, Gr4)
Textfeld3 = Textfield(l)
Textfeld4 = Textfield(m)
Textfeld5 = Textfield(n)
Text5: "f(x,y,z)=" + (LaTeX[A000]) + ""
q = 2 (slider from 1 to 4, step 1)
r = false
u = false
inputBox1 = Textfield(L)
poly1a, j, k, e_1, f_1 = Polygon((-a_0, -a_0), (a_0, -a_0), (a_0, a_0), (-a_0, a_0))
v = false
Info2: "$" + (LaTeX[Info1]) + "$"
Textfeld2 = Textfield(N_{V1})
Autor1: "" + (LaTeX[Autor]) + ""
text11: "s = " + s + " "
Info1b: "" + (LaTeX[Info1]) + ""
Text9: "x_{min}= " + x_{min} + "    x_{max}= " + x_{max} + " "
Text8: " y_{min}= " + y_{min} + "      y_{max}= " + y_{max} + "    "
rot = 0.6 (slider from 0 to 1, step 0.1)
grün = 0.9 (slider from 0 to 1, step 0.1)
blau = 0.5 (slider from 0 to 1, step 0.1)
Deckkraft = 0.02 (slider from 0 to 1, step 0.02)
Text16: "" + Text15 + ""
Fr_x = 1 (slider from 0 to 1, step 0.1)
Fr_y = 0 (slider from 0 to 1, step 0.1)
Fg_y = 0 (slider from 0 to 1, step 0.1)
Fg_x = 0 (slider from 0 to 1, step 0.1)
Fb_x = 0 (slider from 0 to 1, step 0.1)
Fb_y = 1 (slider from 0 to 1, step 0.1)
A = (47.308852216543926, 7.193408210070532)
C = (47.713250878881865, 1.9362255996772695)
Linienstärke = 6 (slider from 0 to 11, step 1)
Festlinien = false