I would like to integrate the single columns of a matrix and insert the obtained values in a row vector.
The procedure i have in mind is:
1 - select the first column of the matrix
2 -integrate following the trapezoidal rule
3 - insert the obtained value in a vector
4 - pass to the second column, and so on..
Read the matrix from file. The matrix is made of 11200 rows and 640 columns.
Here i take only the first 224 rows.
My code is:
double integrate(double w[], int n, double t);
int main()
{
// Open matrix
ifstream white("50frames.txt");
if (white.is_open()) {
for (int i = 0; i < 224; i++) {
for (int j = 0; j < 640; j++) {
white >> w[i][j];
}
}
}
// Select the first column
double col1[224];
double ans1 = 0;
for (int i = 0; i < 224; i++) {
col1[i] = w[i][0];
cout << col1[i]<<'\n';
}
cout << endl;
// Selection with for of every columns
double col2[224];
for (int i = 0; i < 224; i++) {
for (int j = 0; j << 640; j++) {
col2[i] = w[i][j];
}
}
cout << endl;
// integration of the first column
double integrate(double col1[], int n, double t) {
double ans=0;
for (int i = 1; i < n; i++) {
ans += (((col1[i - 1] + col1[i])*t) / 2);
}
return ans;
system("pause");
}
Where i can place the routin for the integartion in order to integarte every single column and insert the value in a row vector?