ADMB Documentation  11.5.3197
 All Classes Files Functions Variables Typedefs Friends Defines
dsize.cpp
Go to the documentation of this file.
00001 /*
00002  * $Id$
00003  *
00004  * Author: David Fournier
00005  * Copyright (c) 2008-2012 Regents of the University of California
00006  */
00011 #include "fvar.hpp"
00012 
00017 int size_count(const dvector& x)
00018 {
00019   return x.size();
00020 }
00021 
00026 int size_count_partial(const dvector& x, int n)
00027 {
00028   return n;
00029 }
00030 
00035 int size_count(const dmatrix& x)
00036 {
00037   int tmp=0;
00038   int min=x.rowmin();
00039   int max=x.rowmax();
00040   for (int i=min;i<=max;i++)
00041   {
00042     tmp+=size_count(x(i));
00043   }
00044   return tmp;
00045 }
00046 
00051 int size_count_partial(const dmatrix& x, int n)
00052 {
00053   int tmp=0;
00054   int min=x.rowmin();
00055   int max=x.rowmax();
00056   for (int i=min;i<=max;i++)
00057   {
00058     tmp+=size_count_partial(x(i),n);
00059   }
00060   return tmp;
00061 }
00062 
00067 int size_count(const d3_array& x)
00068 {
00069   int tmp=0;
00070   int min=x.slicemin();
00071   int max=x.slicemax();
00072   for (int i=min;i<=max;i++)
00073   {
00074     tmp+=size_count(x(i));
00075   }
00076   return tmp;
00077 }
00078 
00083 int size_count_partial(const d3_array& x,int n)
00084 {
00085   int tmp=0;
00086   int min=x.slicemin();
00087   int max=x.slicemax();
00088   for (int i=min;i<=max;i++)
00089   {
00090     tmp+=size_count_partial(x(i),n);
00091   }
00092   return tmp;
00093 }