quick start:g++ [flags ...] file ... -l /isip/tools/lib/$ISIP_BINARY/lib_math_vector.a #include <VectorDouble.h> VectorDouble(long length = DEF_LENGTH, double value = DEF_VALUE); VectorDouble(const VectorDouble& vector);
VectorDouble val0(5);
double mean;
double variance;
val0.assign(L"1, 2, 3, 4, 5");
mean = val0.mean();
if (mean != 3) {
  Error::handle(val0.name(), L"mean", Error::TEST, __FILE__, __LINE__);
  Integral::exit();
}
variance = val0.var();
 
description:
static const String CLASS_NAME = L"VectorDouble";
static const long ERR = 22900;
static MemoryManager mgr_d;
static const String& name();
static boolean diagnose(Integral::DEBUG debug_level);
boolean debug(const unichar* message) const;
~VectorDouble();
VectorDouble(long length = DEF_LENGTH, double value = DEF_VALUE );
VectorDouble(const VectorDouble& vector);
assign methods are inherited from the MVector class
VectorDouble& operator= (const VectorDouble& vector);
boolean read(Sof& sof, long tag, const String& name = CLASS_NAME);
boolean write(Sof& sof, long tag, const String& name = CLASS_NAME);
these methods are inherited from the MVector class
static void* operator new(size_t size);
static void* operator new[](size_t size);
static void operator delete(void* ptr);
static void operator delete[](void* ptr);
static boolean setGrowSize(long grow_size);
VectorDouble(const String& arg, unichar delim_a = DEF_DELIM);
VectorDouble(const unichar* arg, unichar delim_a = DEF_DELIM);
VectorDouble& operator= (double value);
VectorDouble val0(3);
val0.assign(L"5, 7, 9");
String tmp_filename(L"foo");
Sof tmp_file;
tmp_file.open(tmp_filename, File::WRITE_ONLY, File::TEXT);
       
val0.write(tmp_file, (long)0);
tmp_file.close();
  
VectorDouble val0;
VectorDouble val1(4);
       
double dotp;
double norm_val;
       
val0.assign(L"1, 3, 5, 7");
val1.assign(L"2, 4, 6, 3");
dotp = val0.dotProduct(val1);
norm_val = val1.norm();