comparison src/DLD-FUNCTIONS/qz.cc @ 4629:ed92d574b55b

[project @ 2003-11-17 20:43:13 by jwe]
author jwe
date Mon, 17 Nov 2003 20:43:13 +0000
parents 30ba814d6700
children bdbee5282954
comparison
equal deleted inserted replaced
4628:c0121a3b9cbe 4629:ed92d574b55b
105 F77_CHAR_ARG_LEN_DECL 105 F77_CHAR_ARG_LEN_DECL
106 F77_CHAR_ARG_LEN_DECL 106 F77_CHAR_ARG_LEN_DECL
107 F77_CHAR_ARG_LEN_DECL); 107 F77_CHAR_ARG_LEN_DECL);
108 108
109 F77_RET_T 109 F77_RET_T
110 F77_FUNC (dlag2, DLAG2) (double* A, const int& LDA, double* B, 110 F77_FUNC (dlag2, DLAG2) (const double* A, const int& LDA, const double* B,
111 const int& LDB, const double& SAFMIN, 111 const int& LDB, const double& SAFMIN,
112 double& SCALE1, double& SCALE2, 112 double& SCALE1, double& SCALE2,
113 double& WR1, double& WR2, double& WI); 113 double& WR1, double& WR2, double& WI);
114 114
115 // Van Dooren's code (netlib.org: toms/590) for reordering 115 // Van Dooren's code (netlib.org: toms/590) for reordering
758 758
759 // XXX FIXME XXX -- probably should be using 759 // XXX FIXME XXX -- probably should be using
760 // fortran_vec instead of &aa(jj,jj) here. 760 // fortran_vec instead of &aa(jj,jj) here.
761 761
762 double scale1, scale2, wr1, wr2, wi; 762 double scale1, scale2, wr1, wr2, wi;
763 const double *aa_ptr = aa.data () + jj*nn+jj;
764 const double *bb_ptr = bb.data () + jj*nn+jj;
763 F77_XFCN (dlag2, DLAG2, 765 F77_XFCN (dlag2, DLAG2,
764 (&aa(jj,jj), nn, &bb(jj,jj), nn, safmin, 766 (aa_ptr, nn, bb_ptr, nn, safmin,
765 scale1, scale2, wr1, wr2, wi)); 767 scale1, scale2, wr1, wr2, wi));
766 768
767 #ifdef DEBUG_EIG 769 #ifdef DEBUG_EIG
768 std::cout << "dlag2 returns: scale1=" << scale1 770 std::cout << "dlag2 returns: scale1=" << scale1
769 << "\tscale2=" << scale2 << std::endl 771 << "\tscale2=" << scale2 << std::endl