File: The-2D-histogram-struct.html

package info (click to toggle)
gsl-ref-html 1.14-1
  • links: PTS
  • area: non-free
  • in suites: squeeze
  • size: 4,628 kB
  • ctags: 3,088
  • sloc: makefile: 33
file content (85 lines) | stat: -rw-r--r-- 4,596 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
<html lang="en">
<head>
<title>The 2D histogram struct - GNU Scientific Library -- Reference Manual</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="GNU Scientific Library -- Reference Manual">
<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Histograms.html" title="Histograms">
<link rel="prev" href="Two-dimensional-histograms.html" title="Two dimensional histograms">
<link rel="next" href="2D-Histogram-allocation.html#g_t2D-Histogram-allocation" title="2D Histogram allocation">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The GSL Team.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``GNU General Public License'' and ``Free Software
Needs Free Documentation'', the Front-Cover text being ``A GNU Manual'',
and with the Back-Cover Text being (a) (see below).  A copy of the
license is included in the section entitled ``GNU Free Documentation
License''.

(a) The Back-Cover Text is: ``You have the freedom to copy and modify this
GNU Manual.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
</head>
<body>
<div class="node">
<p>
<a name="The-2D-histogram-struct"></a>
Next:&nbsp;<a rel="next" accesskey="n" href="2D-Histogram-allocation.html#g_t2D-Histogram-allocation">2D Histogram allocation</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Two-dimensional-histograms.html">Two dimensional histograms</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Histograms.html">Histograms</a>
<hr>
</div>

<h3 class="section">22.13 The 2D histogram struct</h3>

<p>Two dimensional histograms are defined by the following struct,

<div class="defun">
&mdash; Data Type: <b>gsl_histogram2d</b><var><a name="index-gsl_005fhistogram2d-2024"></a></var><br>
<blockquote><dl>
<dt><code>size_t nx, ny</code><dd>This is the number of histogram bins in the x and y directions. 
<br><dt><code>double * xrange</code><dd>The ranges of the bins in the x-direction are stored in an array of
<var>nx</var> + 1 elements pointed to by <var>xrange</var>. 
<br><dt><code>double * yrange</code><dd>The ranges of the bins in the y-direction are stored in an array of
<var>ny</var> + 1 elements pointed to by <var>yrange</var>. 
<br><dt><code>double * bin</code><dd>The counts for each bin are stored in an array pointed to by <var>bin</var>. 
The bins are floating-point numbers, so you can increment them by
non-integer values if necessary.  The array <var>bin</var> stores the two
dimensional array of bins in a single block of memory according to the
mapping <code>bin(i,j)</code> = <code>bin[i * ny + j]</code>. 
</dl>
        </p></blockquote></div>

<p class="noindent">The range for <code>bin(i,j)</code> is given by <code>xrange[i]</code> to
<code>xrange[i+1]</code> in the x-direction and <code>yrange[j]</code> to
<code>yrange[j+1]</code> in the y-direction.  Each bin is inclusive at the lower
end and exclusive at the upper end.  Mathematically this means that the
bins are defined by the following inequality,
<pre class="display">     bin(i,j) corresponds to xrange[i] &lt;= x &lt; xrange[i+1]
                         and yrange[j] &lt;= y &lt; yrange[j+1]
</pre>
   <p class="noindent">Note that any samples which fall on the upper sides of the histogram are
excluded.  If you want to include these values for the side bins you will
need to add an extra row or column to your histogram.

   <p>The <code>gsl_histogram2d</code> struct and its associated functions are
defined in the header file <samp><span class="file">gsl_histogram2d.h</span></samp>.

<hr>The GNU Scientific Library - a free numerical library licensed under the GNU GPL<br>Back to the <a href="/software/gsl/">GNU Scientific Library Homepage</a></body></html>