Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » In Python ein Tupel verrechnen » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen In Python ein Tupel verrechnen
Beiträge zu diesem Thema Autor Datum
 In Python ein Tupel verrechnen Haevelin 22.06.2015 15:00
 RE: In Python ein Tupel verrechnen eulerscheZahl 22.06.2015 18:21
 RE: In Python ein Tupel verrechnen Haevelin 23.06.2015 11:07
 RE: In Python ein Tupel verrechnen eulerscheZahl 23.06.2015 15:06

Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Haevelin
Tripel-As


Dabei seit: 04.06.2013
Beiträge: 221

In Python ein Tupel verrechnen Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo, folgender Code funktioniert nicht:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
# -*- coding: utf-8 -*- """ Created on Mon Jun 22 09:23:15 2015  @author: rk480158 """  

from sympy import *
import numpy as np 
import math from scipy 
import optimize # aus dem SciPy-Paket wird nur das optimize-Modul eingebunden 
import matplotlib.pyplot as plt # einbinden der Plot-Funktionalitaet von Matplotlib zur graphischen Funktionsdarstellung 
from numpy import * # from numarray import argmax, abs, dot, zeros, Float64, array # import swap # import error 
import numpy as np import numpy.linalg as LA from pylab 
import * from scipy.integrate 
import quad   
def funktion(x1, x2):
     f=np.ones((2,1))
     f[0,0]=sin(x1)-x2
     f[1,0]=math.e**(-x2) - x1
     return f  

def funktion_der(x1,x2):
     f_der=np.ones((2,2))
     f_der[0,0]=cos(x1)
     f_der[1,0]= -1.0
     f_der[0,1]= -1.0
     f_der[1,1]= -math.e**(-x2)
     return np.linalg.pinv(f_der)   
# print funktion(5.0,2.0) 
# print funktion_der(5.0,2.0)  

x_k=np.ones((2,1));
 x_k[0,0]=-2.0 
x_k[1,0]=-2.0 
for i in range(10):
     x_k=x_k - np.dot(funktion_der(x_k[0,0], x_k[1,0]),funktion(x_k[0,0], x_k[1,0]))  print x_k


Während folgendes nicht funktioniert:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
# -*- coding: utf-8 -*- """ Created on Mon Jun 22 09:23:15 2015  @author: rk480158 """  

from sympy import *
import numpy as np 
import math from scipy 
import optimize # aus dem SciPy-Paket wird nur das optimize-Modul eingebunden 
import matplotlib.pyplot as plt # einbinden der Plot-Funktionalitaet von Matplotlib zur graphischen Funktionsdarstellung 
from numpy import * # from numarray import argmax, abs, dot, zeros, Float64, array # import swap # import error 
import numpy as np import numpy.linalg as LA from pylab 
import * from scipy.integrate 
import quad   
def funktion(x1, x2):
     f=np.ones((2,1))
     f[0,0]=sin(x1)-x2
     f[1,0]=math.e**(-x2) - x1
     return f  

def funktion_der(x1,x2):
     f_der=np.ones((2,2))
     f_der[0,0]=cos(x1)
     f_der[1,0]= -1.0
     f_der[0,1]= -1.0
     f_der[1,1]= -math.e**(-x2)
     return np.linalg.pinv(f_der)   
# print funktion(5.0,2.0) 
# print funktion_der(5.0,2.0)  

x_k=np.ones((2,1));
 x_k[0,0]=-2.0 
x_k[1,0]=-2.0 
for i in range(10):
     x_k[0:2,0]=x_k[0:2,0] - np.dot(funktion_der(x_k[0,0], x_k[1,0]),funktion(x_k[0,0], x_k[1,0]))  print x_k


Wie weißt man einem Array einen Wert für jede Komponente zu?
22.06.2015 15:00 Haevelin ist offline Beiträge von Haevelin suchen Nehmen Sie Haevelin in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Wie wär's damit?
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
import math
import numpy as np 
import matplotlib.pyplot as plt # einbinden der Plot-Funktionalitaet von Matplotlib zur graphischen Funktionsdarstellung 
import numpy.linalg as LA
def funktion(x1, x2):
     f=np.ones((2,1))
     f[0,0]=math.sin(x1)-x2
     f[1,0]=math.e**(-x2) - x1
     return f  

def funktion_der(x1,x2):
     f_der=np.ones((2,2))
     f_der[0,0]=math.cos(x1)
     f_der[1,0]= -1.0
     f_der[0,1]= -1.0
     f_der[1,1]= -math.e**(-x2)
     return np.linalg.pinv(f_der)   
# print funktion(5.0,2.0) 
# print funktion_der(5.0,2.0)  

x_k=np.ones((2,1));
x_k[0,0]=-2.0 
x_k[1,0]=-2.0 
for i in range(10):
     x_k[0:2,0:2]=x_k[0:2,0:2] - np.dot(funktion_der(x_k[0,0], x_k[1,0]),funktion(x_k[0,0], x_k[1,0]))
     print x_k


__________________
Syntax Highlighting fürs Board (Link)
22.06.2015 18:21 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Haevelin
Tripel-As


Dabei seit: 04.06.2013
Beiträge: 221

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich verstehe nicht; x_k wurde als 2*1 Matrix festgelegt, während bei deiner Verwendung eine 2*2 Matrix entsteht.
Vor allen Dingen weiß ich nicht warum mein Code funktioniert, wo nur x_k ohne range steht.

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Haevelin: 23.06.2015 11:08.

23.06.2015 11:07 Haevelin ist offline Beiträge von Haevelin suchen Nehmen Sie Haevelin in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

funktion_der liefert dir eine 2x2 Matrix. Da wird das andere dann implizit auch der 2x2 Matrix. Das geht aber nicht, wenn du explizit sagst, dass es das eben nicht ist.

__________________
Syntax Highlighting fürs Board (Link)
23.06.2015 15:06 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Praktische Informatik » In Python ein Tupel verrechnen