File: internals.Rd

package info (click to toggle)
r-cran-distr 2.9.7%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,344 kB
  • sloc: ansic: 199; sh: 13; makefile: 2
file content (509 lines) | stat: -rw-r--r-- 23,998 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
\name{internals_for_distr}
\alias{internals_for_distr}
\alias{.is.vector.lattice}
\alias{.is.consistent}
\alias{.isInteger}
\alias{.isNatural}
\alias{.isNatural0}
\alias{.mergegaps}
\alias{.mergegaps2}
\alias{.pmixfun}
\alias{.dmixfun}
\alias{.qmixfun}
\alias{.rmixfun}
\alias{.del0dmixfun}
\alias{.ULC.cast}
\alias{.loupmixfun}
\alias{.make.lattice.es.vector}
\alias{.presubs}
\alias{.inArgs}
\alias{.EuclidAlgo}
\alias{.getCommonWidth}
\alias{.isEqual}
\alias{.isIn}
\alias{.setEqual}
\alias{.isEqual01}
\alias{.makeD}
\alias{.makeP}
\alias{.makeQ}
\alias{.makeDNew}
\alias{.makePNew}
\alias{.makeQNew}
\alias{.makeDd}
\alias{.makePd}
\alias{.makeQd}
\alias{.makeQc}
\alias{.fM2}
\alias{.fM}
\alias{.fm}
\alias{.notwithLArg}
\alias{.multm}
\alias{.plusm}
\alias{.getObjName}
\alias{.discretizeP}
\alias{.expm.d}
\alias{.expm.c}
\alias{.logm.d}
\alias{.logm.c}
\alias{.P2D}
\alias{.P2Q}
\alias{.D2P}
\alias{.Q2P}
\alias{.csimpsum}
\alias{.primefun}
\alias{.IssueWarn}
\alias{.fillList}
\alias{.trunc.up}
\alias{.trunc.low}
\alias{.modifyqgaps}
\alias{.DistrCollapse}
\alias{.convDiscrDiscr}
\alias{.inWithTol}
\alias{.panel.mingle}
\alias{.consolidategaps}
\alias{.List}
\alias{devNew}

\title{Internal functions of package distr}

\description{
These functions are used internally by package distr.}

\usage{
.is.vector.lattice(x)
.is.consistent(lattice, support, eq.space = TRUE)
.make.lattice.es.vector(x)
.inArgs(arg, fct)
.isEqual(p0, p1, tol = min( getdistrOption("TruncQuantile")/2,
                                          .Machine$double.eps^.7))
.isEqual01(x)
.isIn(p0, pmat, tol = min( getdistrOption("TruncQuantile")/2,
                                          .Machine$double.eps^.7
                                          ))
.isInteger(x, tol = .Machine$double.eps)
.isNatural(x, tol = .Machine$double.eps)
.isNatural0(x, tol = .Machine$double.eps)
.setEqual(x, y, tol = 1e-7)
.presubs(inp, frompat, topat)
.makeD(object, argList,  stand = NULL, fac = NULL)
.makeP(object, argList,  sign = TRUE, correct = NULL, fac =
                 NULL, fac2 = NULL)
.makeQ(object, lastCall, sign = TRUE, Cont = TRUE)
.plusm(e1, e2, Dclass = "DiscreteDistribution")
.multm(e1, e2, Dclass = "DiscreteDistribution")
.notwithLArg(D)
.getObjName(i = 1)
.discretizeP(D, lower, upper, h)
.fm(x,f)
.fM(x,f)
.fM2(x,f)
.makeDd(x,y, yleft, yright)
.makePd(x,y, yleft, yright)
.makeQd(x,y, yleft, yright)
.makeQc(x,y, yleft, yright)
.makeDNew(x, dx, h = NULL, Cont = TRUE, standM = "sum")
.makePNew(x, dx, h = NULL, notwithLLarg = FALSE,
                      Cont = TRUE, myPf = NULL, pxl = NULL, pxu = NULL)
.makeQNew(x, px.l, px.u, notwithLLarg = FALSE, yL , yR, Cont = TRUE)
.mergegaps(gaps, support)
.mergegaps2(gaps1, gaps2)
.consolidategaps(gaps)
.pmixfun(mixDistr, mixCoeff, leftright = "right")
.dmixfun(mixDistr, mixCoeff, withStand = FALSE, supp = NULL)
.rmixfun(mixDistr, mixCoeff)
.qmixfun(mixDistr, mixCoeff, Cont = TRUE, pnew, gaps = NULL, leftright = "left")
.del0dmixfun(mixDistr)
.loupmixfun(mixDistr)
.ULC.cast(x)
.expm.d(e1)
.expm.c(e1)
.logm.d(e1)
.logm.c(e1)
.P2D (p, xx, ql, qu, ngrid = getdistrOption("DefaultNrGridPoints"))
.P2Q (p, xx, ql,qu, ngrid = getdistrOption("DefaultNrGridPoints"), 
                qL = -Inf, qU = Inf)
.D2P (d, xx, ql, qu,  ngrid = getdistrOption("DefaultNrGridPoints"))
.Q2P (q, ngrid = getdistrOption("DefaultNrGridPoints"))
.csimpsum(fx)
.primefun(f,x, nm = NULL)
.IssueWarn(Arith,Sim)
.List(list0)
.fillList(list0, len=length(list0))
.trunc.up(object, upper)
.trunc.low(object, lower)
.modifyqgaps(pfun, qfun, gaps, leftright = "left")
.DistrCollapse(support, prob, eps = getdistrOption("DistrResolution"))
.EuclidAlgo(n1,n2)
.getCommonWidth(x1,x2, tol=.Machine$double.eps)
.convDiscrDiscr(e1,e2)
.inWithTol(x,y,tol=.Machine$double.eps)
.panel.mingle(dots,element)
devNew(...)
}


\arguments{
  \item{x}{a (numeric) vector, or (in case of \code{.ULC.cast}) an object of class \code{"AcDcLcDistribution"}}
  \item{y}{a (numeric) vector}
  \item{f}{in function \code{.primefun}: a function in one (numeric) argument; 
           in functions \code{.fm}, \code{.fM}, \code{.fM2} a vector of function evaluations}
  \item{lattice}{a lattice (of class \code{Lattice})}
  \item{support}{a support vector / support vector of a univariate discrete distribution}
  \item{eq.space}{logical: shall we check for the support to be equally spaced?} 
  \item{arg}{a formal argument as character}
  \item{fct}{a function}
  \item{p0,p1}{(numeric) vectors} 
  \item{pmat}{(matrix) a matrix with two columns where row-wise the left column
              is smaller than the right one} 
  \item{tol}{an error tolerance (numeric)}
  \item{e1}{a distribution object}
  \item{e2}{a numeric}
  \item{object}{a distribution object}  
  \item{argList}{an (unevaluated) list of arguments passed to \code{m(object)}  
        where  \code{m} is in \code{d,p,q}}
  \item{stand}{factor for a (Lebesgue) density to integrate to 1}
  \item{sign}{the sign of the second operand --- for multiplication at 
               the moment}
  \item{correct}{unevaluated R-code to correct for right-continuity 
                  (for multiplication with negative numerics at the moment)}
  \item{fac}{factor to be multiplied with the return value}
  \item{fac2}{factor to be added to the return value}
  \item{lastCall}{unevaluated R-Code ---gives how the result of a call to 
                   \code{q(e1)} is further transformed}
  \item{Cont}{logical: \code{TRUE} if \code{object} is continuous}
  \item{Dclass}{character: name of distribution class}
  \item{D}{a distribution object}
  \item{i}{an integer}
  \item{yleft, yright}{extrapolation value beyond left/right endpoint of grid}
  \item{h}{numeric: grid width}
  \item{standM}{standardization method --- summation or integration}
  \item{notwithLLarg}{logical --- can we use \code{log.p}, \code{lower.tail} 
  arguments for \code{p,q}-methods of first operand?}
  \item{dx}{numeric: vector of cell-probabilities for the (discretized) 
  distribution}
  \item{myPf}{function with args \code{x,y, yleft, yright} 
  (as \code{approxfun}): 
              if given: replaces \code{approxfun} as interpolation method for 
              continuos distributions}
  \item{pxl,pxu}{numeric: if given vector of (lower/upper) cumulative 
  probabilities}
  \item{yL, yR}{argmin / argmax of p()-method}
  \item{inp}{either a language object or a character vector}
  \item{frompat}{vector of character strings containing regular expressions (or
          character string for \code{fixed = TRUE}) to be matched in the
          given character vector.  Coerced by \code{as.character} to a
          character string if possible; (as argument \code{pattern} in 
          \code{\link{gsub}} --- but possibly of length >1).}
  \item{topat}{ a (vector of) replacement(s) for matched pattern in 
          \code{.presubs}. 
          Coerced to character if possible.  For \code{fixed = FALSE} this
          can include backreferences \code{"\\1"} to \code{"\\9"} to 
          parenthesized subexpressions of \code{pattern}.  For 
          \code{perl = TRUE} only, it can
          also contain \code{"\\U"} or \code{"\\L"} to convert the rest of the
          replacement to upper or lower case; (as argument \code{replacement} 
          in \code{\link{gsub}}--- but possibly of length >1).}
 \item{gaps,gaps1,gaps2}{matrices \code{m} with two columns, 
             such that \code{t(m)}, interpreted as vector, is ordered}         
 \item{prob}{probability vector for a univariate discrete distribution}         
 \item{mixDistr}{an object of class \code{UnivarDistrList}}
 \item{mixCoeff}{an object of class \code{numeric}; a probability vector}
 \item{pnew}{a function \code{function(q, lower.tail = TRUE, log.p = FALSE}
 realizing slot \code{p} in a distribution object.}
 \item{withStand}{logical; if \code{TRUE} a standardization is made such
 that the sum of the values of the result evaluated at argument \code{supp} is 1}
 \item{supp}{NULL or \code{numeric}; if \code{withStand} is \code{TRUE} used
 to standardize such that the result is a probability density.}
 \item{p,pfun}{slot \code{p} of an object of class \code{"AbscontDistribution"}} 
 \item{d}{slot \code{d} of an object of class \code{"AbscontDistribution"}} 
 \item{q,qfun}{slot \code{q} of an object of class \code{"AbscontDistribution"}} 
 \item{xx}{a given grid of x-values for functions \code{p}, \code{d} to be
 evaluated at}  
 \item{ql,qu}{lower and upper \code{getdistrOption("TruncQuantile")}-quantile of
 the distribution; also, if argument \code{xx} is missing, left and right endpoint
 of a regular grid of \code{ngrid} gridpoints to be used in place of \code{xx}.}  
 \item{qL,qU}{argmin / argmax of p()-method}  
 \item{ngrid}{number of gridpoints}
 \item{fx}{a vector of function evaluations multiplied by the gridwidth}
 \item{nm}{an optional right asymptotic value}
 \item{Arith}{logical; slot \code{.withArith} of a distribution object,
              or logically-``any'' of these slots in a collection of such objects} 
 \item{Sim}{logical; slot \code{.withSim} of a distribution object,
              or logically-``any'' of these slots in a collection of such objects} 
 \item{list0}{list, the elements of which are to be copied to a new list using
              recycling if necessary}
 \item{len}{length of the list to be filled}              
 \item{lower}{lower truncation point}
 \item{upper}{upper truncation point}
 \item{leftright}{character; for slot \code{q}: if partially matched to \code{"right"} 
                  function will return the right continuous version, else
                  the left continuous version; for slot \code{p}: if partially 
                  matched to \code{"left"} the left continuous version, else
                  the right continuous version;}
 \item{n1}{integer argument for \code{.EuclidAlgo}}
 \item{n2}{integer argument for \code{.EuclidAlgo}}
 \item{x1}{width argument for \code{.getCommonWidth}}
 \item{x2}{width argument for \code{.getCommonWidth}}
 \item{dots}{the unevaluated \code{\dots} argument}
 \item{element}{the name of the item in the unevaluated \code{\dots} argument}
 \item{...}{arguments passed through to other functions}
}

\details{
\code{.is.vector.lattice} checks whether a given vector \code{x} is equally 
spaced.
\code{.is.consistent} checks whether a given support vector \code{support} is 
consistent to a given lattice \code{lattice} --- with or without checking
if \code{support} is equally spaced.  \code{.make.lattice.es.vector} 
makes an object of class \code{Lattice} out of a given (equally spaced) vector 
\code{x}.

\code{.inArgs} checks whether an argument \code{arg} is a formal argument of 
     \code{fct} --- not vectorized.

\code{.isEqual} checks whether \code{p0} and \code{p1} are equal to given
      tolerance.
\code{.isIn} checks whether \code{p0} lies in any of the intervals given by
     matrix \code{pmat} to given tolerance.
\code{.isEqual01}(x) checks whether \code{x} is 0 or 1 to given tolerance. 
\code{.setEqual} sets all elements of x which are equal to some element of y 
         up to tolerance tol, to exactly the respective element of y. 
         
\code{.notwithLArg} checks whether object \code{D} was generated by simulations 
or if its slots \code{p,q} do not have \code{lower.tail} arguments.

\code{.getObjName} returns the name of the object in the \code{i}th operand.
\code{.discretizeP} discretizes \code{D} to a grid of probabilities from 
     \code{lower} to \code{upper} with width \code{h}.   

\code{.fm}, \code{.fM} return the smallest / biggest value in (0,1) such that
  \code{f}(x) is finite; \code{.fM2} is a variant of \code{.fM} using a 
  \code{lower.tail = FALSE} argument.

\code{.makeD}, \code{.makeP}, \code{.makeQ} generate slots \code{p,d,q} for
    binary operations \code{e1 /op/ e2} for a distribution object \code{e1} 
    and a numeric \code{e2} ---for the moment only \code{/op/}'s 
     \code{+,-,*,/} are implemented.

\code{.plusm}, \code{.multm} more specifically use \code{.makeD}, \code{.makeP}, 
\code{.makeQ} to generate slots \code{p,d,q} for \code{+}, \code{*}, 
      respectively. 


\code{.makeDd}, \code{.makePd}, \code{.makeQd} provide discrete analogues to 
\code{approxfun} for interpolation at non grid-values 

\code{.makeQc} is an analogue to \code{makeQd} for absolutely continuous 
distributions using \code{approxfun}. 

\code{.makeDNew} generates slot \code{d} for a new distribution object.
In case of a discrete distribution it produces a step function with 
\code{stepfun} (using \code{.makeDd}) and standardizes to 1 by summation.
In case of a continuous distribution it produces a density function with 
\code{approxfun} and standardizes to 1 by integration if the latter fails,
  it uses a trapezoid rule / summation for this purpose.

\code{.makePNew} generates slot \code{p} for a new distribution object.
In case of a discrete distribution it produces a step function from 
\code{cumsum} applied to \code{dx} ---or from \code{pxl} if this is given, with 
\code{stepfun} (using \code{.makePd}). 
In case of a continuous distribution it produces a cdf with 
\code{approxfun}. In case of \code{RtoDPQ}, \code{approxfun} is replaced by
\code{myPf} which calls \code{ecdf} directly.

\code{.makeQNew} generates slot \code{q} for a new distribution object.
In case of a discrete distribution it produces a step function 
(using \code{.makeQd}). Special care is taken for left continuity...
In case of a continuous distribution it produces a quantile function with 
\code{approxfun}. 

\code{.isInteger}, \code{.isNatural}, and \code{.isNatural0} test for each 
coordinate of argument \code{x} whether it
is integer [natural / natural or 0] or not.

\code{.mergegaps} modifies the gaps matrix of an a.c. distribution according to
the support slot of a discrete distribution; if necessary, a gap interval
[a,b] is split into [a,c],[c,b] if \code{a<c<b}.
\code{.mergegaps2} merges two gap matrices of two a.c. distributions \code{X1} 
and \code{X2} such that in the intervals of the resulting gap matrix, 
neither \code{X1} nor \code{X2} carries mass.
\code{.consolidategaps} consolidates a gap matrix, i.e. joins adjacent 
gap intervals.  

\code{.pmixfun}, \code{.dmixfun}, \code{.rmixfun}, and \code{.qmixfun}
fill the slots \code{p}, \code{d}, \code{r}, and \code{q}
of a corresponding mixing distribution according to the arguments
in \code{mixDistr}, \code{mixCoeff}.

\code{.loupmixfun} finds commun lower and upper bounds for the support of
the mixing distribution.

\code{.del0dmixfun} sets (if slot \code{d.ac} is not \code{NULL}) the return
value of slot function \code{d.ac} of \code{mixDistr} 
for argument \code{0} to \code{0}.

\code{.ULC.cast} coerces an object of class \code{"AcDcLcDistribution"} to
class \code{"UnivarLebDecDistribution"}, using \code{simplifyD}.


\code{.expm.d,.expm.c} for discrete, resp. a.c. argument \code{e1} fill the 
slots \code{p}, \code{d}, \code{r}, and \code{q}
of the transformation \code{exp(e1)} exactly.
\code{.logm.d,.logm.c} for discrete, resp. a.c. argument \code{e1} fill the 
slots \code{p}, \code{d}, \code{r}, and \code{q}
of the transformation \code{log(e1)} exactly.

For objects of class \code{\link{AbscontDistribution}},
\code{.P2D} and \code{.P2Q} reconstruct function slots \code{d} resp. 
\code{q} from function slot \code{p}
by means of function \code{D1ss} from package \pkg{sfsmisc};
and of function \code{.makeQNew},  respectively. The other way round, 
\code{.D2P} and \code{.Q2P} reconstruct function slot \code{p} from 
from function slots  \code{d} resp. \code{q} 
by means of function \code{.makePNew} and explicite numeric inversion,  
respectively.

\code{.csimpsum} is used internally in \code{.makePNew} to produce
a primitive function out of function evaluations by means of vectorized
Simpson quadrature method, returning already the function values
of the prime function on a grid; it is to mimick the behaviour
of \code{cumsum}. \code{.primefun} is similar but more flexible and
produces the prime function as a function.

\code{.List} checks if argument already is a list, and if so leaves it as
             it is, otherwise casts it to a list by a call to \code{list}.

\code{.fillList} fills a new list with the elements of a given list \code{list0}
                 until length \code{len} is reached using recycling if necessary.
                 Argument \code{list0} is cast to \code{list} by a call
                 to \code{.List} if necessary.

\code{.trunc.up}, \code{.trunc.low}  provide common routines for
classes \code{DiscreteDistribution} and \code{AbscontDistribution} for 
one-sided truncation, using (for slot \code{r}) Peter Dalgaard's clever 
log-tricks as indicated in 
\url{https://stat.ethz.ch/pipermail/r-help/2008-September/174321.html}.

\code{.modifyqgaps} modifies slot \code{q} for objects of class 
     \code{AbscontDistribution} in the presence of gaps, i.e.; if slot
     \code{gaps} is not \code{NULL}. If argument \code{leftright} does not
     partially match \code{"right"} (default) returns the left continuous
     version of the quantile function, else the right continuous one.
 
\code{.EuclidAlgo} computes the greatest common divisor of two integers by 
      means of the Euclidean algorithm.
\code{.getCommonWidth} for two lattices with widths \code{x1} and \code{x2}
      computes the smallest common lattice width for convolution.
\code{.convDiscrDiscr} computes the convolution of two discrete distributions by
    brute force.
\code{.inWithTol} works like \code{\%in\%} but with a given tolerance.

\code{.panel.mingle} is used for mingling arguments \code{panel.first},
\code{panel.last} in a plot; it returns the evaluated argument \code{element}
within dots, if it is a symbol; else if it can be interpreted as a call, and if
the top call is \code{list}, it returns a list of the items of the call to \code{list},
unevaluated, and otherwise the unchanged argument.

\code{devNew} opens a new device. This function is for back compatibility
with R versions < 2.8.0. To control the number of opened devices, when
\code{length(dev.list())>20}, in interactive mode we ask the user to shut
some windows until \code{length(dev.list())<=20}; in non-interactive mode
we shut the first 15 open devices (except for the first one) before opening
a new one.
}


\value{
\item{.is.vector.lattice}{\code{logical} (length 1).}
\item{.is.consistent}{\code{logical} (length 1).}
\item{.notwithLArg}{\code{logical} (length 1).}
\item{.make.lattice.es.vector}{an object of class \code{Lattice}.}
\item{.inArgs}{\code{logical} (length 1).}
\item{.isIn, .isEqual,.isEqual01}{vector of \code{logical}.}
\item{.fm,.fM, .fM2}{a \code{numeric} of length 1.}
\item{.plusm,.multm}{an object of class \code{DiscreteDistribution} or 
       \code{AbscontDistribution} according to argument \code{DClass}.}
\item{.getObjName}{\code{character}.}
\item{.discretizeP}{\code{numeric} --- the probabilities for the grid-values.}
\item{.makeDd,.makePd, .makeQd}{a function with args 
       \code{x, y, yleft, yright}.}
\item{.makeD,.makeDNew}{a function with args \code{x, log = FALSE}.}
\item{.makeP,.makePNew}{a function with args \code{q, lower.tail = TRUE, 
       log.p = FALSE}.}
\item{.makeQ,.makeQNew}{a function with args \code{p, lower.tail = TRUE, 
       log.p = FALSE}.}
\item{.isInteger,.isNatural,.isNatural0}{\code{logical} (same length as argument \code{x}).}
\item{.mergegaps,.mergegaps2}{a \code{gaps}-matrix, i.e.; a matrix \code{m} with two columns, 
              such that \code{t(m)}, interpreted as vector, is ordered.}
\item{.pmixfun}{slot \code{p} for a mixing distribution, i.e. a function 
                \code{function(q, lower.tail = TRUE, log.p = FALSE)}, which
                is  the cdf of the distribution.}
\item{.dmixfun}{slot \code{d} for a mixing distribution, i.e. a function 
                \code{function(x, log = FALSE)}, which
                is  the density of the distribution.}
\item{.qmixfun}{slot \code{q} for a mixing distribution, i.e. a function 
                \code{function(p, lower.tail = TRUE, log.p = FALSE)}, which
                is  the quantile function of the distribution.}
\item{.rmixfun}{slot \code{r} for a mixing distribution, i.e. a function 
                \code{function(n)} generating r.v.'s according to the distribution.}
\item{.deldmixfun}{a possibly modified argument \code{mixDistr}.}
\item{.loupmixfun}{a list of four components: \code{qL}, the minimal value of 
\code{q(x)(0)}, \code{ql}, the minimal value of 
\code{q(x)(getdistrOption("TruncQuantile"))}, \code{qU}, the maximal value of 
\code{q(x)(1)}, \code{qu}, the maximal value of 
\code{q(x)(getdistrOption("TruncQuantile"), lower.tail = FALSE)},
\code{x} running through the members of \code{mixDistr} in each case.}
\item{.ULC.cast}{an object of class \code{"UnivarLebDecDistribution"}.}
\item{.expm.d,.logm.d}{an object of class \code{"DiscreteDistribution"}.} 
\item{.expm.c,.logm.c}{an object of class \code{"AbscontDistribution"}.} 
\item{.P2D}{a density \code{d} as function \code{function(x,  log = FALSE)}.}
\item{.P2Q}{a quantile function \code{q} as function \code{function(p, 
            lower.tail = TRUE, log.p = FALSE)}} 
\item{.D2P, .Q2P}{a cdf \code{p} as function \code{function(q, 
            lower.tail = TRUE, log.p = FALSE)}.}
\item{.csimpsum}{a vector of evaluations of the prime function at the grid points.}
\item{.primefun}{the prime function as a function.}
\item{.IssueWarn}{a list with two warnings to be issued each of which may be empty.}
\item{.List}{a list.}
\item{.fillList}{a list.}
\item{.trunc.up,.trunc.low}{a list with elements \code{r,p,d,q} (in this order).}
\item{.DistrCollapse}{upon a suggestion by Jacob van Etten, 
       \email{jacobvanetten@yahoo.com}: help function to collapse the support 
       points of a discrete distributions if they are too close to each other;
       here argument \code{support} is the (original; already sorted) support
       and \code{prob} a corresponding probability vector of same length.
       Criterium for collapsing: a distance smaller than argument
       \code{eps}.
       }
\item{.EuclidAlgo}{returns the greatest common divisor (an integer).}
\item{.getCommonWidth}{returns the  smallest common lattice width (a numeric).}
\item{.convDiscrDiscr}{returns the convolution of two discrete distributions.}
\item{.inWithTol}{returns a logical vector of same lenght as \code{x} for the
    matches (up to tolerance) with vector \code{y}.}
\item{.panel.mingle}{used for mingling arguments \code{panel.first},
\code{panel.last}; returns the evaluated argument \code{element} within dots,
if it is a symbol; else if it can be interpreted as a call, and if the top
call is \code{list}, it returns a list of the items of the call to \code{list},
unevaluated, and otherwise the unchanged argument.}
\item{devNew}{returns the return value of the device opened,
usually invisible \code{NULL}.}
}

\author{
  Peter Ruckdeschel \email{peter.ruckdeschel@uni-oldenburg.de},
  Matthias Kohl \email{Matthias.Kohl@stamats.de}
}

\seealso{
\code{\link{AbscontDistribution}},
\code{\link{DiscreteDistribution}},
\code{\link{LatticeDistribution}},
\code{\link{RtoDPQ}},
\code{\link{RtoDPQ.d}},
\code{\link{convpow}},
\code{\link{operators}},
\code{\link{plot-methods}}
\code{\link[grDevices:dev]{dev.new}}
}
\keyword{internal}
\concept{utilities}