NFFT Logo 3.1.2 API Reference

fields_fastsum.h File Reference

Header file for calculation of 3d space-charge fields of bunches of charged particles by fast summation. More...

#include <complex.h>
#include "util.h"
#include "nfft3.h"
#include "fastsum.h"

Go to the source code of this file.

Data Structures

struct  fields_fastsum_plan
 plan for fast calculation of 3D space-charge fields of bunches of charged particles. More...

Defines

#define EPSILON_0   8.8541878176E-12
 Include header for C99 complex datatype.

Functions

void fields_fastsum_init (fields_fastsum_plan *plan, int N_total, unsigned flags, int nn, int m, int p, double eps_I, double eps_B)
 initialize fast calculation plan
void fields_fastsum_finalize (fields_fastsum_plan *plan)
 finalize plan
void fields_fastsum_exact (fields_fastsum_plan *plan)
 direct calculation
void fields_fastsum_simple (fields_fastsum_plan *plan)
 simple NFFT-based summation algorithm
void fields_fastsum_precompute (fields_fastsum_plan *plan)
 fast NFFT-based summation, precomputation
void fields_fastsum_trafo (fields_fastsum_plan *plan)
 fast NFFT-based summation algorithm


Detailed Description

Header file for calculation of 3d space-charge fields of bunches of charged particles by fast summation.

reference: G. Pöplau, D. Potts and U. van Rienen. Calculation of 3D Space-Charge Fields of Charged Particles by Fast Summation. Scientific Computing in Electrical Engineering, A.M. Anile, G. Ali and G. Mascaly (Eds.), Springer-Verlag, Berlin, pages 241-246, 2005.

Author:
Toni Volkmer
Date:
2006

Definition in file fields_fastsum.h.


Define Documentation

#define EPSILON_0   8.8541878176E-12

Include header for C99 complex datatype.

Include header for utils from NFFT3 library. Include header for NFFT3 library.

Definition at line 24 of file fields_fastsum.h.

Referenced by fields_fastsum_exact(), fields_fastsum_simple(), and fields_fastsum_trafo().


Function Documentation

void fields_fastsum_init ( fields_fastsum_plan plan,
int  N_total,
unsigned  flags,
int  nn,
int  m,
int  p,
double  eps_I,
double  eps_B 
)

initialize fast calculation plan

Parameters:
plan The pointer to a fields fastsum plan.
N_total The number of source knots r.
flags Fastsum flags.
nn The expansion degree.
m The cut-off parameter for the NFFT.
p The degree of smoothness.
eps_I The inner boundary.
eps_B the outer boundary.

Definition at line 19 of file fields_fastsum.c.

References fields_fastsum_plan::E, fastsum_init_guru(), fields_fastsum_plan::fsum, fields_fastsum_plan::N_total, one_over_cube(), fields_fastsum_plan::q, and fields_fastsum_plan::r.

void fields_fastsum_finalize ( fields_fastsum_plan plan  ) 

finalize plan

Parameters:
plan The pointer to a fields fastsum plan.

Definition at line 33 of file fields_fastsum.c.

References fields_fastsum_plan::E, fastsum_finalize(), fields_fastsum_plan::fsum, fastsum_plan::kernel_param, fields_fastsum_plan::q, and fields_fastsum_plan::r.

void fields_fastsum_exact ( fields_fastsum_plan plan  ) 

direct calculation

Parameters:
plan The pointer to a fields fastsum plan.

Definition at line 43 of file fields_fastsum.c.

References fields_fastsum_plan::E, EPSILON_0, fields_fastsum_plan::N_total, PI, fields_fastsum_plan::q, and fields_fastsum_plan::r.

void fields_fastsum_simple ( fields_fastsum_plan plan  ) 

simple NFFT-based summation algorithm

Parameters:
plan The pointer to a fields fastsum plan.

Definition at line 75 of file fields_fastsum.c.

References fastsum_plan::alpha, fields_fastsum_plan::E, EPSILON_0, fastsum_plan::f, fastsum_precompute(), fastsum_trafo(), fields_fastsum_plan::fsum, fields_fastsum_plan::N_total, PI, fields_fastsum_plan::q, fields_fastsum_plan::r, fastsum_plan::x, and fastsum_plan::y.

void fields_fastsum_precompute ( fields_fastsum_plan plan  ) 

fast NFFT-based summation, precomputation

Parameters:
plan The pointer to a fields fastsum plan.

Definition at line 165 of file fields_fastsum.c.

References fastsum_plan::alpha, fastsum_precompute(), fields_fastsum_plan::fsum, fields_fastsum_plan::N_total, nfft_second(), fields_fastsum_plan::q, fields_fastsum_plan::r, fastsum_plan::x, and fastsum_plan::y.

void fields_fastsum_trafo ( fields_fastsum_plan plan  ) 

fast NFFT-based summation algorithm

Parameters:
plan The pointer to a fields fastsum plan.

Definition at line 185 of file fields_fastsum.c.

References fastsum_plan::Ad, fastsum_plan::Add, fastsum_plan::alpha, fastsum_plan::b, fields_fastsum_plan::E, fastsum_plan::eps_I, EPSILON_0, nfft_plan::f, nfft_plan::f_hat, FieldsSearchTree(), fastsum_plan::flags, fields_fastsum_plan::fsum, fastsum_plan::kernel_param, fastsum_plan::M_total, fastsum_plan::mv1, fastsum_plan::mv2, fastsum_plan::N_total, fields_fastsum_plan::N_total, nfft_plan::N_total, nfft_adjoint(), nfft_trafo(), fastsum_plan::p, PI, fields_fastsum_plan::r, fastsum_plan::x, and fastsum_plan::y.


Generated on 16 Sep 2009 by Doxygen 1.5.3