41 dat=
new lx_interval[i];
53 l(i1),u(i2),size(i2-i1+1)
55 noexcept:l(i1),u(i2),size(i2-i1+1)
59 if(i1>i2) cxscthrow(ERROR_IVECTOR_WRONG_BOUNDARIES(
60 "lx_ivector(const int &i1,const int &i2)"));
62 dat=
new lx_interval[size];
67 dat=
new lx_interval[1];
73 dat=
new lx_interval[1];
79 dat=
new lx_interval[1];
85 dat=
new lx_interval[1];
91 dat=
new lx_interval[1];
97 dat=
new lx_interval[1];
102 noexcept:l(v.l),u(v.u),size(v.size)
104 dat=
new lx_interval[size];
105 for (
int i=0;i<size;i++)
111 l = rv.l; u = rv.u; size = rv.size;
112 dat=
new lx_interval[size];
113 for (
int i=0;i<size;i++)
120 lx_interval *newdat =
new lx_interval[size];
121 for (
int i=0;i<size;i++)
130 lx_interval *newdat =
new lx_interval[size];
131 for (
int i=0;i<size;i++)
140 lx_interval *newdat =
new lx_interval[size];
141 for (
int i=0;i<size;i++)
150 lx_interval *newdat =
new lx_interval[size];
151 for (
int i=0;i<size;i++)
160 lx_interval *newdat =
new lx_interval[size];
161 for (
int i=0;i<size;i++)
170 lx_interval *newdat =
new lx_interval[size];
171 for (
int i=0;i<size;i++)
179 #if(CXSC_INDEX_CHECK)
185 #if(CXSC_INDEX_CHECK)
186 if(i<l||i>u) cxscthrow(ERROR_IVECTOR_ELEMENT_NOT_IN_VEC(
187 "lx_interval & lx_ivector::operator [](const int &i)"));
193 #if(CXSC_INDEX_CHECK)
199 #if(CXSC_INDEX_CHECK)
200 if(i<l || i>u) cxscthrow(ERROR_IVECTOR_ELEMENT_NOT_IN_VEC(
201 "lx_interval & lx_ivector::operator [](const int &i)"));
207 #if(CXSC_INDEX_CHECK)
217 #if(CXSC_INDEX_CHECK)
219 cxscthrow(ERROR__WRONG_BOUNDARIES(
220 "Resize(lx_ivector &rv, int len)"));
222 lx_interval *ndat =
new lx_interval[len];
224 beg = (rv.l>1)? rv.l : 1;
225 end = (rv.u<len)? rv.u : len;
226 for(
int i=beg-1;i<end;i++)
227 ndat[i]=rv.dat[i-rv.l+1];
236 #if(CXSC_INDEX_CHECK)
242 if (rv.size == ub-lb+1)
247 #if(CXSC_INDEX_CHECK)
249 cxscthrow(ERROR__WRONG_BOUNDARIES(
250 "Resize(lx_ivector &rv, int lb, int ub)"));
252 lx_interval *ndat =
new lx_interval[rv.size];
254 beg = (rv.l>lb)? rv.l : lb;
255 end = (rv.u<ub)? rv.u : ub;
256 for(
int i=0;i<=rv.size-1;i++)
258 for(
int i=beg;i<=end;i++)
259 ndat[i-lb]=rv.dat[i-rv.l];