У меня есть вектор sigma[40000]
и еще один u[200]
.
Я хочу использовать dgemv
для умножения первых 200 чисел sigma
на u
, а затем следующий 200-400 снова с u
, пока я не использую все числа sigma
.
У меня есть что-то вроде этого:
for(i=0; i<200; i++)
{
for(j=0; j<200; j++)
{
sum = sum +sigma[i*200 + j]*u[j]
}
z=...+sum;
}
Я хочу сделать что-то вроде этого:
cblas_dgemv(CblasRowMajor,CblasNoTrans,1,200,1,u,200,sigma,1,0,return,1)
for(i=0; i<200; i++)
{
sum=...+return[i];
}
Возвращаемым значением является вектор (return[200]
), в котором return[0]=sigma[0-199]*u[0-199]
.