CSR-FORMAT matrix C++ |
13.12.2015, 09:15 | Auf diesen Beitrag antworten » |
Marcell99 | CSR-FORMAT matrix C++ Meine Frage: Die Aufgaben habe ich hochgeladen kann jemand vielleicht drüber schauen ob es alles so richtig ist ??? bei g wüsste ich jetzt nicht genau was man da machen muss :/ das mit der Laufzeit verwirrt mich etwas Meine Ideen: b) for (i=0; i<N, i++) for (j=row-offsets[i] ; j < row_offsets [i+1] ; j++) y[i] += entries [i] *x[ column_indices [j] ]; c)using namespace std; void MatVecMultCSR(int* row offsets, int* column indices, double* entries, double* x, double* y, int n, int m) vektor<int> row_offsets = { 0, 3, 5, 8, 10, 12 }; vektor<int> entries = { 1, 2, 1, 1, 5, 1, 2, 2, 2, 3, 1, 4 }; vektor<int> sum(5); for(double i = 0; i < row_offsets.()-1; i++) { sum[i] = SUM(entries() + row_offsets0[i], entries() + row_offsets0[i + 1], 0); d) for (n = 0; n < N; n = n ++) y[i] = 0; // [0, 0, 0, 0, 0] i = 0; n = 0; y[0] = y[1] + entires[3]*s[Column_indices[1]]; y[0] = y[1] + entires[3]*s[1]; y[0] =1 + 3*1; //[4, 0, 0, 0, 0] i = 0; n = 1; y[0] = y[2] + entries[1]*s[Column_indices[4]]; y[0] = y[2] + entries[1]*s[4]; y[0] = 2 + 1*4; //[4, 6, 0, 0, 0] i = 0; n = 2; y[0] = y[1] + entires[2]*s[Column_indices[2]]; y[0] = y[1] + entires[2]*s[2]; y[0] = 1 + 2*2; //[4, 6, 5, 0, 0] . . . i = 2; n = Row_offsets[4] = 12; y[2] = y[2] + entries[4]*s[Column_indices[12]]; y[2] = y[2] + entires[4]*s[1]; y[2] = 1 + 4*1; // [4,6,5,5,5] f) void Trigonal (double* A, double* x, double* y, int n, int m, int i, int j, int N) int i; y[0] = y[0/x[0]; n[0] = n[0]/x[0]; for(i = 1; i != N; i++){ j = 1.0/(x[i] - y[i - 1]*A[i]); y[i] = y[i]*j; n[i] = (n[i] - A[i]*n[i - 1])*j; } m[N - 1] = n[N - 1]; for(i = N - 2; i != -1; i--) m[i] = n[i] - y[i]*m[i + 1]; |
|
|
Verwandte Themen
Die Beliebtesten » |
|
Die Größten » |
|
Die Neuesten » |
|