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 }
Generated on Tue Mar 8 2016 19:51:32 for ADMB Documentation by 1.8.0 |