Main Page | Files | Data Structures | Functions | Global Variables |
gpiv-piv_utils.h
Go to the documentation of this file.
1 /* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 4 c-style: "K&R" -*- */
2 
3 /*
4  libgpiv - library for Particle Image Velocimetry
5 
6  Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Gerber van der Graaf
7 
8  This file is part of libgpiv.
9 
10  Libgpiv is free software; you can redistribute it and/or modify
11  it under the terms of the GNU General Public License as published by
12  the Free Software Foundation; either version 2, or (at your option)
13  any later version.
14 
15  This program is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  GNU General Public License for more details.
19 
20  You should have received a copy of the GNU General Public License
21  along with this program; if not, write to the Free Software Foundation,
22  Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
23 
24 
25 
26 
27 -------------------------------------------------------------------------------
28 LIBRARY: libgpiv:
29 EXTERNAL FUNCTIONS:
30  gpiv_null_pivdata
31  gpiv_alloc_pivdata
32  gpiv_check_alloc_pivdata
33  gpiv_free_pivdata
34  gpiv_0_pivdata
35  gpiv_cp_pivdata
36  gpiv_add_dxdy_pivdata
37  gpiv_sum_dxdy_pivdata
38 
39  gpiv_alloc_cov
40  gpiv_free_cov
41 
42  gpiv_piv_mpi_bcast_pivdata
43 
44 LAST MODIFICATION DATE: $Id: gpiv-piv_utils.h,v 1.2 2008-09-25 13:19:53 gerber Exp $
45  --------------------------------------------------------------------------- */
55 #ifndef __LIBGPIV_PIV_UTILS_H__
56 #define __LIBGPIV_PIV_UTILS_H__
57 
65 void
67  );
68 
69 
78 gpiv_alloc_pivdata (const guint nx,
79  const guint ny
80  );
81 
88 gchar *
90  );
91 
100 void
102  );
103 
104 
105 
114 gchar *
115 gpiv_0_pivdata (const GpivPivData *piv_data
116  );
117 
118 
119 
128 GpivPivData *
129 gpiv_cp_pivdata (const GpivPivData *piv_data
130  );
131 
132 
142 gchar *
143 gpiv_ovwrt_pivdata (const GpivPivData *piv_data_in,
144  const GpivPivData *piv_data_out
145  );
146 
147 
148 
158 gchar *
159 gpiv_add_dxdy_pivdata (const GpivPivData *piv_data_in,
160  GpivPivData *piv_data_out
161  );
162 
163 
164 
174 gchar *
175 gpiv_sum_dxdy_pivdata (const GpivPivData *piv_data,
176  gfloat *sum
177  );
178 
179 
180 
193 gchar *
194 gpiv_piv_gnuplot (const gchar *title,
195  const gfloat gnuplot_scale,
196  const gchar *GNUPLOT_DISPLAY_COLOR,
197  const guint GNUPLOT_DISPLAY_SIZE,
198  const GpivImagePar *image_par,
199  const GpivPivPar *piv_par,
200  const GpivPivData *piv_data
201  );
202 
203 
204 
212 GpivCov *
213 gpiv_alloc_cov (const guint int_size0,
214  const gboolean x_corr
215  );
216 
223 void
225  );
226 
227 
228 /*
229  * Some MPI routines
230  */
231 #ifdef ENABLE_MPI
232 
244 void
245 gpiv_piv_mpi_scatter_pivdata (GpivPivData *pd,
246  GpivPivData *pd_scat,
247  guint nprocs
248  );
249 
259 void
260 gpiv_piv_mpi_gather_pivdata (GpivPivData *pd_scat,
261  GpivPivData *pd,
262  guint nprocs
263  );
264 
272 gint *
273 gpiv_piv_mpi_compute_counts (const guint nx,
274  const guint ny
275  );
276 
285 gint *
286 gpiv_piv_mpi_compute_displs (gint *counts,
287  const guint nx,
288  const guint ny
289  );
290 
305 void
306 gpiv_piv_mpi_scatterv_pivdata (GpivPivData *pd,
307  GpivPivData *pd_scat,
308  gint *counts,
309  gint *displs
310  );
311 
326 void
327 gpiv_piv_mpi_gatherv_pivdata (GpivPivData *pd_scat,
328  GpivPivData *pd,
329  gint *counts,
330  gint *displs
331  );
332 
342 void
343 gpiv_piv_mpi_bcast_pivdata (GpivPivData *pd
344  );
345 
346 #endif /* ENABLE_MPI */
347 #endif /* __LIBGPIV_PIV_UTILS_H__ */
gchar * gpiv_0_pivdata(const GpivPivData *piv_data)
Sets estimators, snr and peak_nr of piv_data to 0 or 0.0.
gchar * gpiv_ovwrt_pivdata(const GpivPivData *piv_data_in, const GpivPivData *piv_data_out)
Overwrites piv_data_out with piv_data_in.
GpivPivData * gpiv_alloc_pivdata(const guint nx, const guint ny)
Allocates memory for GpivPivData.
Holds the variables of PIV data.
Definition: gpiv.h:267
void gpiv_null_pivdata(GpivPivData *piv_data)
Sets all elements of piv_data structure to NULL.
void gpiv_free_cov(GpivCov *cov)
Frees memory for GpivCov.
Image parameters or header info.
Definition: gpiv-img.h:122
Parameters for PIV evaluation (interrogation) of images.
Definition: gpiv-piv_par.h:91
GpivCov * gpiv_alloc_cov(const guint int_size0, const gboolean x_corr)
Allocates memory for GpivCov.
GpivPivData * gpiv_cp_pivdata(const GpivPivData *piv_data)
Returns a copy of piv_data.
gchar * gpiv_sum_dxdy_pivdata(const GpivPivData *piv_data, gfloat *sum)
Adds all displacements in order to calculate residuals The structure will have to be allocated before...
gchar * gpiv_check_alloc_pivdata(const GpivPivData *piv_data)
Checks if piv_data have been allocated.
Covariance data.
Definition: gpiv-piv.h:119
gchar * gpiv_piv_gnuplot(const gchar *title, const gfloat gnuplot_scale, const gchar *GNUPLOT_DISPLAY_COLOR, const guint GNUPLOT_DISPLAY_SIZE, const GpivImagePar *image_par, const GpivPivPar *piv_par, const GpivPivData *piv_data)
Plots piv data as vectors on screen with gnuplot.
gchar * gpiv_add_dxdy_pivdata(const GpivPivData *piv_data_in, GpivPivData *piv_data_out)
Adds displacements (dx, dy), snr and peak_nr from piv_data_in to piv_data_out.
void gpiv_free_pivdata(GpivPivData *piv_data)
Frees memory for GpivPivData.

Generated for libgpiv-0.6.1 by doxygen 1.8.13