| Bsoft 2.0.5 Bernard's software package

mg_multislice.h
Go to the documentation of this file.
1
9 #include "mg_processing.h"
10 #include "rwimg.h"
11 #include "rwmolecule.h"
12
13 // Function prototypes
14 Bimage* img_calc_multi_slice(Bimage* pgrate, double thickness, double volt, double resolution);
15 Bimage* img_calc_wave_propagator(Vector3<long> size, Vector3<double> sam,
16 double thickness, double volt, double resolution);
17 Bimage* img_calc_potential(Bmolgroup* molgroup, Vector3<long> size, Vector3<double> origin,
18 Vector3<double> sam, double thickness, double resolution, double Bfactor,
19 Bstring& paramfile, int type);
20 int img_calc_phase_grating(Bimage* p, double volt);
21 int img_apply_complex_CTF(Bimage* p, double def_avg, double def_dev, double ast_angle,
22 double volts, double Cs, double Cc, double amp_shift, double alpha, double energy_spread);
23 Bproject* project_generate(int nfield, int nmg, int npart, double pixel_size, double img_origin,
24 double volt, double Cs, double Cc, double alpha, double energy_spread,
25 double amp_shift, double def_min, double def_max, double dose,
26 double tsigma, Bstring& fieldbase, Bstring& mgbase, Bstring& partbase,
27 int fieldnumber, int mgnumber, int partnumber);
28 Bproject* project_generate_asu(Bstring& symmetry_string, double pixel_size, double img_origin,
29 double theta_step, double phi_step,
30 double volt, double Cs, double Cc, double alpha, double energy_spread,
31 double amp_shift, double defocus, double dose, Bstring& mgbase, Bstring& partbase);
32 int project_generate_potential(Bmolgroup* molgroup, Bmolgroup* water, Bproject* project,
33 Bstring& fieldname, Bstring& mgname, int partselect,
34 Vector3<long> size, double thickness, double resolution,
35 double Bfactor, int pottype, Bstring& paramfile);
36 int project_generate_image(Bproject* project, double thickness, double resolution);
37 int project_apply_distortions(Bproject* project, int poisson, double gauss, double kmtf);
project_apply_distortions
int project_apply_distortions(Bproject *project, int poisson, double gauss, double kmtf)
Applies imaging distortions to the final images from a multislice calculation.
Definition: mg_multislice.cpp:674
img_calc_phase_grating
int img_calc_phase_grating(Bimage *p, double volt)
Calculates the phase grating approximation from the atomic potential.
Definition: mg_multislice.cpp:206
project
Bproject * project
Definition: bshow.cpp:31
project_generate_potential
int project_generate_potential(Bmolgroup *molgroup, Bmolgroup *water, Bproject *project, Bstring &fieldname, Bstring &mgname, int partselect, Vector3< long > size, double thickness, double resolution, double Bfactor, int pottype, Bstring &paramfile)
Generates potential images using a multislice calculation.
Definition: mg_multislice.cpp:502
Bimage
General image parameter class.
Definition: Bimage.h:163
img_apply_complex_CTF
int img_apply_complex_CTF(Bimage *p, double def_avg, double def_dev, double ast_angle, double volts, double Cs, double Cc, double amp_shift, double alpha, double energy_spread)
Applies a complex CTF function to a Fourier transform.
Definition: mg_multislice.cpp:252
rwmolecule.h
Header file for reading reflection files.
Bmolgroup
Definition: rwmolecule.h:170
project_generate
Bproject * project_generate(int nfield, int nmg, int npart, double pixel_size, double img_origin, double volt, double Cs, double Cc, double alpha, double energy_spread, double amp_shift, double def_min, double def_max, double dose, double tsigma, Bstring &fieldbase, Bstring &mgbase, Bstring &partbase, int fieldnumber, int mgnumber, int partnumber)
Generates a project for multislice simulations.
Definition: mg_multislice.cpp:344
img_calc_potential
Bimage * img_calc_potential(Bmolgroup *molgroup, Vector3< long > size, Vector3< double > origin, Vector3< double > sam, double thickness, double resolution, double Bfactor, Bstring &paramfile, int type)
Calculates the atomic potential.
Definition: mg_multislice.cpp:139
Bstring
Definition: Bstring.h:29
Vector3< long >
project_generate_image
int project_generate_image(Bproject *project, double thickness, double resolution)
Generates final images from a multislice calculation.
Definition: mg_multislice.cpp:602
mg_processing.h
Header file for micrograph processing.
rwimg.h
Header file for 2D and 3D image I/O.
img_calc_wave_propagator
Bimage * img_calc_wave_propagator(Vector3< long > size, Vector3< double > sam, double thickness, double volt, double resolution)
Calculates the wave propagation function between slices.
Definition: mg_multislice.cpp:32
Bproject
Definition: mg_processing.h:333
project_generate_asu
Bproject * project_generate_asu(Bstring &symmetry_string, double pixel_size, double img_origin, double theta_step, double phi_step, double volt, double Cs, double Cc, double alpha, double energy_spread, double amp_shift, double defocus, double dose, Bstring &mgbase, Bstring &partbase)
Generates a project for multislice calculations of an asymmetric unit.
Definition: mg_multislice.cpp:441
img_calc_multi_slice
Bimage * img_calc_multi_slice(Bimage *pgrate, double thickness, double volt, double resolution)
Simulates the electron imaging process using a multi-slice approach.
Definition: mg_multislice.cpp:89