wie geht der Funktionsaufruf???
-
Hallo,
ich will zu einer 3X3-Matrix eine gegebene Funktion aufrufen, die die Eigenwerte und Eigenvektoren berechnet.
Bekannt ist die Matrix (zB):
1 2 3
4 5 6
7 8 9Die Funktion sei wie folgt gegeben:
int tseigvals( int n, float *a, float *b, float *e, float *x, float *w )
Bekannt ist folgendes:
input:
n the order of the matrices
a,b full, symmetric matrices defining the problem the contents of these arrays are changed by eigvas.
output:
e vector of eigenvalues
x matrix of eigenvectors
w workspace vector (size n)
istat test flag, istat = 0 if operation was successful
istat = 1 if operation wasn't successful
istat = 2 if the problem has complex eigenvaluesWie muß ich jetzt die matrix speichern, wie sieht der Funktionsaufruf aus???
Wie kann ich die Ergebnisse danach ausgeben mit cout << ...???Danke für jede Hilfe!
Ich habe keinen Planwie das gehen soll...
-
PS: es handelt sich um C++ (falls das ne Rolle spielt)
-
Da scheibar keiner antworten will, versuch ich mal mein Glück: Wenns c++ is, warum dann kein vector? Mir ist nicht klar was du zurückgeben/ändern willst, aber wie wäre es so?
vector<vector<vector<int> > >& tseigvals(vector<vector<vector<int> > >& a); cout<<a[1][2][8]
Jetzt kannst du den Vektor in der Funktion verändern, und musst nur einen Parameter übergeben (Es sei denn du brauchst noch mehr -> s. oben)