*** empty log message ***

This commit is contained in:
jiri 2006-09-11 22:00:30 +00:00
parent e2251f66f1
commit e49b73e9e9

View File

@ -257,7 +257,6 @@ int power;
NRVec<typename LA_traits<V>::elementtype> taylor2=exp_aux<M,typename LA_traits<V>::elementtype>(mat,power); NRVec<typename LA_traits<V>::elementtype> taylor2=exp_aux<M,typename LA_traits<V>::elementtype>(mat,power);
V result(mat.nrows()); V result(mat.nrows());
cerr <<"power = "<<power<<endl;
for(int i=1; i<=(1<<power); ++i) //unfortunatelly, here we have to repeat it many times, unlike if the matrix is stored explicitly for(int i=1; i<=(1<<power); ++i) //unfortunatelly, here we have to repeat it many times, unlike if the matrix is stored explicitly
{ {
if(i>1) vec=result; //apply again to the result of previous application if(i>1) vec=result; //apply again to the result of previous application
@ -584,7 +583,11 @@ L100:
i__1 = m; i__1 = m;
for (j = 1; j <= i__1; ++j) { for (j = 1; j <= i__1; ++j) {
++nmult; ++nmult;
(matvec)(&wsp[j1v - n], &wsp[j1v]); {
NRVec<double> res(&wsp[j1v],n,true);
NRVec<double> rhs(&wsp[j1v - n],n,true);
mat.gemv(0.,res,transpose?'t':'n',1.,rhs);
}
i__2 = j; i__2 = j;
for (i__ = 1; i__ <= i__2; ++i__) { for (i__ = 1; i__ <= i__2; ++i__) {
hij = cblas_ddot(n, &wsp[iv + (i__ - 1) * n], 1, &wsp[j1v], 1); hij = cblas_ddot(n, &wsp[iv + (i__ - 1) * n], 1, &wsp[j1v], 1);
@ -610,7 +613,11 @@ L100:
/* L200: */ /* L200: */
} }
++nmult; ++nmult;
(matvec)(&wsp[j1v - n], &wsp[j1v]); {
NRVec<double> res(&wsp[j1v],n,true);
NRVec<double> rhs(&wsp[j1v - n],n,true);
mat.gemv(0.,res,transpose?'t':'n',1.,rhs);
}
avnorm = cblas_dnrm2(n, &wsp[j1v], 1); avnorm = cblas_dnrm2(n, &wsp[j1v], 1);
/* --- set 1 for the 2-corrected scheme ... */ /* --- set 1 for the 2-corrected scheme ... */
@ -630,7 +637,7 @@ L401:
if (ideg != 0) { if (ideg != 0) {
/* --- irreducible rational Pade approximation ... */ /* --- irreducible rational Pade approximation ... */
d__1 = sgn * t_step__; d__1 = sgn * t_step__;
dgpadm_(&ideg, &mx, &d__1, &wsp[ih], &mh, &wsp[ifree], &lfree, &iwsp[1] FORNAME(dgpadm)(&ideg, &mx, &d__1, &wsp[ih], &mh, &wsp[ifree], &lfree, &iwsp[1]
, &iexph, &ns, &iflag); , &iexph, &ns, &iflag);
iexph = ifree + iexph - 1; iexph = ifree + iexph - 1;
nscale += ns; nscale += ns;
@ -643,7 +650,7 @@ L401:
} }
wsp[iexph] = 1.; wsp[iexph] = 1.;
d__1 = sgn * t_step__; d__1 = sgn * t_step__;
dnchbv_(&mx, &d__1, &wsp[ih], &mh, &wsp[iexph], &wsp[ifree + mx]); FORNAME(dnchbv)(&mx, &d__1, &wsp[ih], &mh, &wsp[iexph], &wsp[ifree + mx]);
} }
/* L402: */ /* L402: */