NFFT Logo 3.0.2 API Reference
Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals

fields_fastsum.c File Reference

Calculation of 3d space-charge fields of bunches of charged particles by fast summation. More...

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <complex.h>
#include <math.h>
#include "fastsum.h"
#include "fields_fastsum.h"
#include "kernels.h"

Go to the source code of this file.

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 FieldsSearchTree (double *result, int t, double *x, complex *alpha, double *xmin, double *xmax, int N, complex(*kernel)(double, int, const double *), const double *param, int Ad, double *Add, int p, unsigned flags)
 fast search in tree of source knots for near field computation, modified version from fastsum.c
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

Calculation of 3d space-charge fields of bunches of charged particles by fast summation.

Author:
Toni Volkmer
Date:
2006

Definition in file fields_fastsum.c.


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 fastsum_init_guru().

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 fastsum_finalize().

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 EPSILON_0, and PI.

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 EPSILON_0, fastsum_precompute(), fastsum_trafo(), and PI.

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_precompute(), and nfft_second().

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 EPSILON_0, FieldsSearchTree(), nfft_adjoint(), nfft_trafo(), and PI.


Generated on 22 Jan 2007 by Doxygen 1.4.1