Go to the documentation of this file.00001
00002 #ifndef mbl_matrix_product_h
00003 #define mbl_matrix_product_h
00004
00005
00006
00007
00008
00009
00010 #include <vnl/vnl_fwd.h>
00011
00012
00013 void mbl_matrix_product(vnl_matrix<double>& AB, const vnl_matrix<double>& A,
00014 const vnl_matrix<double>& B);
00015
00016
00017 void mbl_matrix_product_a_bt(vnl_matrix<double>& ABt, const vnl_matrix<double>& A,
00018 const vnl_matrix<double>& B);
00019
00020
00021 void mbl_matrix_product_a_bt(vnl_matrix<double>& ABt,
00022 const vnl_matrix<double>& A,
00023 const vnl_matrix<double>& B,
00024 int n_cols);
00025
00026
00027
00028 void mbl_matrix_product_a_at(vnl_matrix<double>& AAt,
00029 const vnl_matrix<double>& A,
00030 unsigned nr, unsigned nc);
00031
00032
00033
00034 void mbl_matrix_product_a_at(vnl_matrix<double>& AAt,
00035 const vnl_matrix<double>& A);
00036
00037
00038
00039 void mbl_matrix_product_at_b(vnl_matrix<double>& AtB, const vnl_matrix<double>& A,
00040 const vnl_matrix<double>& B);
00041
00042
00043
00044 void mbl_matrix_product_at_b(vnl_matrix<double>& AtB, const vnl_matrix<double>& A,
00045 const vnl_matrix<double>& B, int ncols_a);
00046
00047
00048 void mbl_matrix_product_at_a(vnl_matrix<double>& AtA,
00049 const vnl_matrix<double>& A,
00050 unsigned nc);
00051
00052
00053 void mbl_matrix_product_at_a(vnl_matrix<double>& AtA,
00054 const vnl_matrix<double>& A);
00055
00056
00057
00058
00059 void mbl_matrix_product_adb(vnl_matrix<double>& ADB,
00060 const vnl_matrix<double>& A,
00061 const vnl_vector<double>& d,
00062 const vnl_matrix<double>& B);
00063
00064 #endif // mbl_matrix_product_h