ADMB Documentation  11.5.3197
 All Classes Files Functions Variables Typedefs Friends Defines
dmat9.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 #ifndef OPT_LIB
00013   #include <cassert>
00014 #endif
00015 
00020 mat_shape::mat_shape(int rl,int ru,int cl,int cu)
00021 {
00022 #ifndef OPT_LIB
00023   assert(ru >= rl);
00024   assert(cu >= cl);
00025 #endif
00026   row_min=rl;
00027   row_max=ru;
00028   col_min=cl;
00029   col_max=cu;
00030   nrows=(unsigned int)(ru-rl+1);
00031   ncols=(unsigned int)(cu-cl+1);
00032   ncopies=0;
00033 }
00034 
00039 void mat_shape::colshift(int min)
00040 {
00041   col_max=col_max-col_min+min;
00042   col_min=min;
00043 }
00044 
00049 void dmatrix::rowshift(int min )
00050 {
00051   m = m + rowmin() - min;
00052   index_max+=min-index_min;
00053   index_min=min;
00054 }
00055 
00060 void mat_shape::rowshift(int min)
00061 {
00062   row_max=row_max-row_min+min;
00063   row_min=min;
00064 }
00065 
00070  void dmatrix::colshift( int min)
00071  {
00072    for (int i=rowmin(); i<=rowmax(); i++)
00073    {
00074      this->elem(i).shift(min);
00075    }
00076    //shape->colshift(min);
00077  }