ADMB Documentation  11.1.2490
 All Classes Files Functions Variables Typedefs Friends Defines
cmpdif10.cpp
Go to the documentation of this file.
00001 /*
00002  * $Id: cmpdif10.cpp 1112 2013-07-12 21:41:41Z johnoel $
00003  *
00004  * Author: David Fournier
00005  * Copyright (c) 2008-2012 Regents of the University of California
00006  */
00011 #include "fvar.hpp"
00012 #ifdef __TURBOC__
00013   #pragma hdrstop
00014 #endif
00015 
00020 imatrix_position::imatrix_position(const imatrix& m)
00021   : lb(m.rowmin(),m.rowmax()), ub(m.rowmin(),m.rowmax()),
00022   ptr(m.rowmin(),m.rowmax())
00023 {
00024   row_min=m.rowmin();
00025   row_max=m.rowmax();
00026   for (int i=row_min;i<=row_max;i++)
00027   {
00028     lb(i)=m(i).indexmin();
00029     ub(i)=m(i).indexmax();
00030     ptr(i)=m(i).get_v();
00031   }
00032 }
00033 
00038 imatrix_position::imatrix_position(int min,int max)
00039   : lb(min,max), ub(min,max), ptr(min,max)
00040 {
00041   row_min=min;
00042   row_max=max;
00043   for (int i=row_min;i<=row_max;i++)
00044   {
00045     lb(i)=0;
00046     ub(i)=-1;
00047     ptr(i)=0;
00048   }
00049 }
00050 
00055 imatrix_position::imatrix_position(const imatrix_position& p)
00056   : lb(p.row_min,p.row_max), ub(p.row_min,p.row_max),
00057     ptr(p.row_min,p.row_max)
00058 {
00059   row_min=p.row_min;
00060   row_max=p.row_max;
00061   lb=p.lb;
00062   ub=p.ub;
00063   ptr=p.ptr;
00064   // cout << "ptr= " << ptr ;
00065 }