| |
|
|
p.specht
| Das Newton-Raphson-Verfahren funktioniert auch con Características en 2 Dimensionen, sprich: z =Z(x,y). Leider es el Verfahren insofern más anspruchsvoll, como el sog. partiellen Ableitungen el bekannten Función (después de x y después de y) ebenfalls bekannt ser debería. En no allzu komplizierten Formeln debería el aber ir. Liegen allerdings sólo Pagar / Datensätze, z.B. con Messwerten encima 2 Dimensionen antes, entonces empfehlen se otro, rein numerische Verfahren, z.B. Nelder-Mead udgl.
Referencia: El hier einprogrammierten Características fueron gewählt, a Auswirkungen el heiklen Wahl des Startpunktes el Ergebnis darzustellen.
Título de la ventana "Gradientenabstieg (Newtonverfahren en 2 Dimensionen)"
AppendMenuBar 100,"Geg.: Z(x,y)=(x+sin(y))*exp(-sqr(x)*-sqr(y)) Ges.: Ort des lokalen Minimus"
Ventana 0,0-%maxx,%maxy-40:font 2
declarar z!,x!,y!,xh&,yh&,f!,g!,s!
xh&=width(%hwnd)\2:yh&=height(%hwnd)\2
g!=1.5:s!=0.1:f!=220
proc Z :parámetros x!,y!
volver (x!+sin(y!))*exp(-sqr(x!)-sqr(y!))
ENDPROC
proc dZdx :parámetros x!,y!
volver exp(-sqr(y!)-sqr(x!))*(1-2*x!*(x!+sin(y!)))
ENDPROC
proc dZdy :parámetros x!,y!
volver exp(-sqr(y!)-sqr(x!))*(cos(y!)-2*y!*(x!+sin(y!)))
ENDPROC
' ------ Z-Feld darstellen ----
cls
x!=-g!:Repeat
y!=-g!:Mientras que y!<=g!
z!=Z(x!,y!)
usepen 0,7+7*z!,rgb(0,0,400*z!)
line xh&+x!*f!+z!*7,(yh&-y!*f!-z!*11) - xh&+x!*f!,yh&-y!*f!
y!=y!+s!:endwhile
x!=x!+s!:until x!>=g!
'-------------------------------------------------------
' Gradientenabstieg
'-------------------------------------------------------
declarar gstep!,xx!,yy!,xxo!,yyo!,dx!,dy!,dz!,eps!,n&,xxx!,yyy!
gstep!=0.15
whileloop 50,-50,-5:yyy!=&Loop/50
whileloop -50,50,5 :xxx!=&Loop/30
xx!=xxx!
yy!=yyy!'Startpunkt
n&=0
REPEAT
dx!=dZdx(xx!,yy!)
dy!=dZdy(xx!,yy!)
xxo!=xx!:yyo!=yy!
xx!=xx!-dx!*gstep!
yy!=yy!-dy!*gstep!
usepen 0,4,rgb(255,0,0)
line xh&+xx!*f!,(yh&-yy!*f!)-xh&+xx!*f!,yh&-yy!*f!
locate 2,2:imprimir xx!,yy!,Z(xx!,yy!),n&;" "
inc n&
UNTIL ((xx!=xxo!) and (yy!=yyo!)) or (n&>=250)
WEND
WEND
beep
waitinput
End
|
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 28.05.2021 ▲ |
|
|
|