-
Notifications
You must be signed in to change notification settings - Fork 0
/
3dFFT.json
122 lines (122 loc) · 5.4 KB
/
3dFFT.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
{
"command-line": "3dFFT [ABS] [PHASE] [COMPLEX] [INVERSE] [LX] [LY] [LZ] [ALTIN] [ALTOUT] [INPUT] [PREFIX] [DATASET]",
"description": "tool description",
"inputs": [
{
"command-line-flag": "-abs",
"description": "Outputs the magnitude of the FFT [default]",
"id": "ABS",
"name": "ABS",
"optional": true,
"type": "String",
"value-key": "[ABS]"
},
{
"command-line-flag": "-phase",
"description": "Outputs the phase of the FFT (-PI..PI == no unwrapping!)",
"id": "PHASE",
"name": "PHASE",
"optional": true,
"type": "String",
"value-key": "[PHASE]"
},
{
"command-line-flag": "-complex",
"description": "Outputs the complex-valued FFT",
"id": "COMPLEX",
"name": "COMPLEX",
"optional": true,
"type": "String",
"value-key": "[COMPLEX]"
},
{
"command-line-flag": "-inverse",
"description": "Does the inverse FFT instead of the forward FFT",
"id": "INVERSE",
"name": "INVERSE",
"optional": true,
"type": "String",
"value-key": "[INVERSE]"
},
{
"command-line-flag": "-Lx",
"description": "Use FFT of length 'xx' in the x-direction",
"id": "LX",
"name": "LX",
"optional": true,
"type": "String",
"value-key": "[LX]"
},
{
"command-line-flag": "-Ly",
"description": "Use FFT of length 'yy' in the y-direction",
"id": "LY",
"name": "LY",
"optional": true,
"type": "String",
"value-key": "[LY]"
},
{
"command-line-flag": "-Lz",
"description": "Use FFT of length 'zz' in the z-direction * Set a length to 0 to skip the FFT in that direction",
"id": "LZ",
"name": "LZ",
"optional": true,
"type": "String",
"value-key": "[LZ]"
},
{
"command-line-flag": "-altIN",
"description": "Alternate signs of input data before FFT, to bring zero frequency from edge of FFT-space to center of grid for cosmetic purposes.",
"id": "ALTIN",
"name": "ALTIN",
"optional": true,
"type": "String",
"value-key": "[ALTIN]"
},
{
"command-line-flag": "-altOUT",
"description": "Alternate signs of output data after FFT. If you use '-altI' on the forward transform, then you should use '-altO' an the inverse transform, to get the signs of the recovered image correct. **N.B.: You cannot use '-altIN' and '-altOUT' in the same run!",
"id": "ALTOUT",
"name": "ALTOUT",
"optional": true,
"type": "String",
"value-key": "[ALTOUT]"
},
{
"command-line-flag": "-input",
"description": "Read the input dataset from 'dd', instead of from the last argument on the command line.",
"id": "INPUT",
"name": "INPUT",
"optional": false,
"type": "String",
"value-key": "[INPUT]"
},
{
"command-line-flag": "-prefix",
"description": "Use 'pp' for the output dataset prefix. Notes ===== * In the present avatar, only 1 sub-brick will be processed. * The program can only do FFT lengths that are positive even integers. * The 'x', 'y', and 'z' axes here refer to the order the data is stored, not DICOM coordinates; cf. 3dinfo. * If you force (via '-Lx' etc.) an FFT length that is not allowed, the program will stop with an error message. * If you force an FFT length that is shorter than an dataset axis dimension, the program will stop with an error message. * If you don't force an FFT length along a particular axis, the program will pick the smallest legal value that is greater than or equal to the corresponding dataset dimension. + e.g., 123 would be increased to 124. * If an FFT length is longer than an axis length, then the input data in that direction is zero-padded at the end. * For -abs and -phase, the output dataset is in float format. * If you do the forward and inverse FFT, then you should get back the original dataset, except for roundoff error and except that the new dataset axis dimensions may be longer than the original. * Forward FFT = sum_{k=0..N-1} [ exp(-2*PI*i*k/N) * data(k) ] * Inverse FFT = sum_{k=0..N-1} [ exp(+2*PI*i*k/N) * data(k) ] / N * Started a long time ago, but only finished in Aug 2009 at the request of John Butman, because he asked so nicely. (Now pay up!) ++ Compile date = Sep 7 2018 {:}",
"id": "PREFIX",
"name": "PREFIX",
"optional": true,
"type": "String",
"value-key": "[PREFIX]"
},
{
"description": "NA",
"id": "dataset",
"name": "dataset",
"optional": false,
"type": "String",
"value-key": "[DATASET]"
}
],
"name": "tool name",
"schema-version": "0.5",
"suggested-resources": {
"cpu-cores": 1,
"ram": 1,
"walltime-estimate": 60
},
"tags": {},
"tool-version": "v0.1.0"
}