42 typedef typename T::real_diag_matrix_type
DM_T;
59 : m_type (), m_driver (), m_left_sm (), m_sigma (), m_right_sm ()
66 : m_type (a.m_type), m_driver (a.m_driver), m_left_sm (a.m_left_sm),
67 m_sigma (a.m_sigma), m_right_sm (a.m_right_sm)
75 m_left_sm = a.m_left_sm;
77 m_right_sm = a.m_right_sm;
78 m_driver = a.m_driver;
86 T left_singular_matrix ()
const;
90 T right_singular_matrix ()
const;
94 typedef typename T::element_type P;
95 typedef typename DM_T::element_type DM_P;
104 void gesvd (
char& jobu,
char& jobv, octave_f77_int_type m,
105 octave_f77_int_type n, P *tmp_data, octave_f77_int_type m1,
106 DM_P *s_vec, P *u, P *vt, octave_f77_int_type nrow_vt1,
107 std::vector<P>& work, octave_f77_int_type& lwork,
108 octave_f77_int_type& info);
110 void gesdd (
char& jobz, octave_f77_int_type m, octave_f77_int_type n,
111 P *tmp_data, octave_f77_int_type m1, DM_P *s_vec, P *u,
112 P *vt, octave_f77_int_type nrow_vt1, std::vector<P>& work,
113 octave_f77_int_type& lwork, octave_f77_int_type *iwork,
114 octave_f77_int_type& info);
116 void gejsv (
char& joba,
char& jobu,
char& jobv,
char& jobr,
char& jobt,
117 char& jobp, octave_f77_int_type m, octave_f77_int_type n,
118 P *tmp_data, octave_f77_int_type m1, DM_P *s_vec, P *u,
119 P *v, octave_f77_int_type nrow_v1, std::vector<P>& work,
120 octave_f77_int_type& lwork,
121 std::vector<octave_f77_int_type>& iwork,
122 octave_f77_int_type& info);