Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00011 #include <fvar.hpp>
00012
00017 double sum(const dvector &v)
00018 {
00019 double tmp=0;
00020 for (int i=v.indexmin(); i<=v.indexmax(); i++)
00021 {
00022 tmp+=v.elem(i);
00023 }
00024 return tmp;
00025 }
00026
00031 dvector colsum(const dmatrix &v)
00032 {
00033 int cmin=v.colmin();
00034 int cmax=v.colmax();
00035 int rmin=v.rowmin();
00036 int rmax=v.rowmax();
00037
00038
00039 dvector tmp(cmin,cmax);
00040 tmp.initialize();
00041 for (int j=cmin; j<=cmax; j++)
00042 {
00043 for (int i=rmin; i<=rmax; i++)
00044 {
00045 tmp(j)+=v(i,j);
00046 }
00047 }
00048 return tmp;
00049 }
00050
00055 dvector rowsum(const dmatrix &v)
00056 {
00057
00058
00059 int rmin=v.rowmin();
00060 int rmax=v.rowmax();
00061
00062 dvector tmp(rmin,rmax);
00063 for (int i=rmin; i<=rmax; i++)
00064 {
00065 tmp(i)=sum(v(i));
00066 }
00067 return tmp;
00068 }
00069
00074 double sum(const dmatrix& m)
00075 {
00076 double tmp=0.;
00077 for (int i=m.rowmin();i<=m.rowmax();i++)
00078 {
00079 tmp+=sum(m.elem(i));
00080 }
00081 return tmp;
00082 }