param.h 1.62 KB
Newer Older
qon's avatar
qon committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#ifndef BIOEM_PARAM_H
#define BIOEM_PARAM_H

#include "defs.h"
#include "map.h"
#include <complex>
#include <math.h>

class bioem_map_forFFT;

class bioem_param_device
{
public:
	int maxDisplaceCenter;
	int GridSpaceCenter;
	int NumberPixels;
17
	int NtotDist;
qon's avatar
qon committed
18
19
20
21
22
23
24
	myfloat_t Ntotpi;
	myfloat_t volu;
};

class bioem_param
{
public:
25
26
27
28
29
30
31
	bioem_param();
	~bioem_param();

	int readParameters();
	int CalculateGridsParam();
	int CalculateRefCTF();
	int InitializeArrays();
qon's avatar
qon committed
32
33
34

	bioem_param_device param_device;

35
	bioem_map_forFFT* refCTF;
qon's avatar
qon committed
36
37

// File names
38
39
	const char* fileinput;
	char logFile;
qon's avatar
qon committed
40
// If to write Probabilities of Angles from Model
41
	bool writeAngles;
qon's avatar
qon committed
42
// Pixel size &&  BIOEM_MAP_SIZE_X should be defined here too
43
44
	//int NumberPixels; //in device class
	myfloat_t pixelSize;
qon's avatar
qon committed
45
// Grid Points in Euler angles, assuming uniform sampling d_alpha=d_gamma (in 2pi) & cos(beta)=-1,1
46
47
	int angleGridPointsAlpha;
	int angleGridPointsBeta;
qon's avatar
qon committed
48
// Grids in center assuming equidistance from 0,0
49
50
	//int maxDisplaceCenter; //in device class
	int numberGridPointsDisplaceCenter;
qon's avatar
qon committed
51
52
	//int GridSpaceCenter; //in device class
// Grid sampling for the convolution kernel
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
	//ENVELOPE
	myfloat_t startGridEnvelop;
	int numberGridPointsEnvelop;
	myfloat_t gridEnvelop;
	//CTF=Amp*cos(phase*x)-sqrt(1-Amp**2)*sin(phase*x)
	myfloat_t startGridCTF_phase;
	int numberGridPointsCTF_phase;
	myfloat_t gridCTF_phase;
	myfloat_t startGridCTF_amp;
	int numberGridPointsCTF_amp;
	myfloat_t gridCTF_amp;
	// Others
	//myfloat_t volu;//in device class
	myfloat3_t angles[MAX_ORIENT];
	myfloat3_t CtfParam[MAX_REF_CTF] ;
	int nTotGridAngles;
	int nTotCTFs;
	//myfloat_t Ntotpi;//in device class
qon's avatar
qon committed
71
72
73
};

#endif