00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00016
00017
00018 inline
00019 double
00020 randu()
00021 {
00022 return double(eop_aux_randu<double>());
00023 }
00024
00025
00026 template<typename eT>
00027 inline
00028 typename arma_scalar_only<eT>::result
00029 randu()
00030 {
00031 return eT(eop_aux_randu<eT>());
00032 }
00033
00034
00035
00037 arma_inline
00038 const Gen<vec::elem_type, gen_randu>
00039 randu(const uword n_elem)
00040 {
00041 arma_extra_debug_sigprint();
00042
00043 return Gen<vec::elem_type, gen_randu>(n_elem, 1);
00044 }
00045
00046
00047
00048 template<typename vec_type>
00049 arma_inline
00050 const Gen<typename vec_type::elem_type, gen_randu>
00051 randu(const uword n_elem, const arma_empty_class junk1 = arma_empty_class(), const typename arma_Mat_Col_Row_only<vec_type>::result* junk2 = 0)
00052 {
00053 arma_extra_debug_sigprint();
00054 arma_ignore(junk1);
00055 arma_ignore(junk2);
00056
00057 if(is_Row<vec_type>::value == true)
00058 {
00059 return Gen<typename vec_type::elem_type, gen_randu>(1, n_elem);
00060 }
00061 else
00062 {
00063 return Gen<typename vec_type::elem_type, gen_randu>(n_elem, 1);
00064 }
00065 }
00066
00067
00068
00070 arma_inline
00071 const Gen<mat::elem_type, gen_randu>
00072 randu(const uword n_rows, const uword n_cols)
00073 {
00074 arma_extra_debug_sigprint();
00075
00076 return Gen<mat::elem_type, gen_randu>(n_rows, n_cols);
00077 }
00078
00079
00080
00081 template<typename mat_type>
00082 arma_inline
00083 const Gen<typename mat_type::elem_type, gen_randu>
00084 randu(const uword n_rows, const uword n_cols, const typename arma_Mat_Col_Row_only<mat_type>::result* junk = 0)
00085 {
00086 arma_extra_debug_sigprint();
00087 arma_ignore(junk);
00088
00089 return Gen<typename mat_type::elem_type, gen_randu>(n_rows, n_cols);
00090 }
00091
00092
00093
00094 arma_inline
00095 const GenCube<cube::elem_type, gen_randu>
00096 randu(const uword n_rows, const uword n_cols, const uword n_slices)
00097 {
00098 arma_extra_debug_sigprint();
00099
00100 return GenCube<cube::elem_type, gen_randu>(n_rows, n_cols, n_slices);
00101 }
00102
00103
00104
00105 template<typename cube_type>
00106 arma_inline
00107 const GenCube<typename cube_type::elem_type, gen_randu>
00108 randu(const uword n_rows, const uword n_cols, const uword n_slices, const typename arma_Cube_only<cube_type>::result* junk = 0)
00109 {
00110 arma_extra_debug_sigprint();
00111 arma_ignore(junk);
00112
00113 return GenCube<typename cube_type::elem_type, gen_randu>(n_rows, n_cols, n_slices);
00114 }
00115
00116
00117