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-------------------------------------------------------------------------------
28LIBRARY: libgpiv:
29EXTERNAL 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
44LAST 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
65void
67 );
68
69
78gpiv_alloc_pivdata (const guint nx,
79 const guint ny
80 );
81
88gchar *
90 );
91
100void
102 );
103
104
105
114gchar *
116 );
117
118
119
130 );
131
132
142gchar *
143gpiv_ovwrt_pivdata (const GpivPivData *piv_data_in,
144 const GpivPivData *piv_data_out
145 );
146
147
148
158gchar *
160 GpivPivData *piv_data_out
161 );
162
163
164
174gchar *
176 gfloat *sum
177 );
178
179
180
193gchar *
194gpiv_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
212GpivCov *
213gpiv_alloc_cov (const guint int_size0,
214 const gboolean x_corr
215 );
216
223void
225 );
226
227
228/*
229 * Some MPI routines
230 */
231#ifdef ENABLE_MPI
232
244void
245gpiv_piv_mpi_scatter_pivdata (GpivPivData *pd,
246 GpivPivData *pd_scat,
247 guint nprocs
248 );
249
259void
260gpiv_piv_mpi_gather_pivdata (GpivPivData *pd_scat,
261 GpivPivData *pd,
262 guint nprocs
263 );
264
272gint *
273gpiv_piv_mpi_compute_counts (const guint nx,
274 const guint ny
275 );
276
285gint *
286gpiv_piv_mpi_compute_displs (gint *counts,
287 const guint nx,
288 const guint ny
289 );
290
305void
306gpiv_piv_mpi_scatterv_pivdata (GpivPivData *pd,
307 GpivPivData *pd_scat,
308 gint *counts,
309 gint *displs
310 );
311
326void
327gpiv_piv_mpi_gatherv_pivdata (GpivPivData *pd_scat,
328 GpivPivData *pd,
329 gint *counts,
330 gint *displs
331 );
332
342void
343gpiv_piv_mpi_bcast_pivdata (GpivPivData *pd
344 );
345
346#endif /* ENABLE_MPI */
347#endif /* __LIBGPIV_PIV_UTILS_H__ */
GpivPivData * gpiv_alloc_pivdata(const guint nx, const guint ny)
Allocates memory for GpivPivData.
gchar * gpiv_ovwrt_pivdata(const GpivPivData *piv_data_in, const GpivPivData *piv_data_out)
Overwrites piv_data_out with piv_data_in.
gchar * gpiv_check_alloc_pivdata(const GpivPivData *piv_data)
Checks if piv_data have been allocated.
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_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.
void gpiv_null_pivdata(GpivPivData *piv_data)
Sets all elements of piv_data structure to NULL.
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_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_0_pivdata(const GpivPivData *piv_data)
Sets estimators, snr and peak_nr of piv_data to 0 or 0.0.
void gpiv_free_cov(GpivCov *cov)
Frees memory for GpivCov.
Covariance data.
Definition gpiv-piv.h:114
Image parameters or header info.
Definition gpiv-img.h:122
Holds the variables of PIV data.
Definition gpiv.h:267
Parameters for PIV evaluation (interrogation) of images.

Generated for libgpiv-0.6.1 by doxygen 1.9.8