MainWindow
0
0
1000
965
0
0
60
60
1400
965
Akvo - sNMR Workbench
1.000000000000000
true
0
0
0
0
140000
927
-
0
0
460
460
-
0
0
0
900
16777215
1000
true
0
0
972
970
0
970
16777215
1000
-
0
0
960
0
16777215
960
Qt::LeftToRight
0
0
0
940
940
16777215
940
Preprocess RAW
false
470
10
460
125
0
0
460
125
Input parameters
110
30
91
21
<html><head/><body><p>Set the stacks that you would like processed.</p><p>This must be a valid set of numpy array indices. Remember that Python uses non end-inclusive indexing. </p><p>So things like [1:24] will include stacks 1-23</p><p>Furthermore [1:8,12:24] will include stacks 1-7 and 12:23. Any list of valid indices will be accepted, but they must be comma seperated. </p></body></html>
required
10
30
51
20
Stacks
10
65
101
16
Data Chs.
110
60
91
21
<html><head/><body><p>Set the data channels that you would like processed.</p><p>This must be a valid set of numpy array indices. Remember that Python uses non end-inclusive indexing. </p><p>So things like [1:3] will use channels 1 and 2</p><p>Any list of valid indices will be accepted, but they must be comma seperated. </p></body></html>
required
220
36
121
16
Dead time [ms]
360
30
91
25
<html><head/><body><p>This is the instrument dead time that is used. You may remove additonal or less dead time as an option. By default Akvo uses the recommended instrument dead times.</p></body></html>
0.500000000000000
0.500000000000000
5.000000000000000
220
64
121
16
Reference Chs.
360
60
91
21
<html><head/><body><p>Set the reference channels that you would like processed.</p><p>This must be a valid set of numpy array indices. Remember that Python uses non end-inclusive indexing. </p><p>So things like [1:3] will use channels 1 and 2</p><p>Any list of valid indices will be accepted, but they must be comma seperated. </p><p>Optionally no reference channels are allowed, just leave this field black so it says none</p></body></html>
none
10
95
91
16
Process FID
110
90
91
25
<html><head/><body><p>For T1 or CPMG pulses, which pulse(s) would you like to process. Note that for very short delay T1 pulses, the first pulse may be disabled. </p></body></html>
false
360
90
91
31
#loadDataPushButton {
background: green;
}
#loadDataPushButton:disabled {
background: black;
}
Load Data
false
224
90
111
21
Plot RAW
true
false
470
420
480
201
0
0
480
180
IIR Band-Pass Filter
true
false
300
30
171
22
true
Hello
-
Butterworth
-
Chebychev Type II
-
Elliptic
370
170
99
23
#bandPassGO {
background: green;
}
#bandPassGO:disabled{
background: black;
}
GO
130
60
71
22
25.000000000000000
500.000000000000000
5.000000000000000
50.000000000000000
130
90
71
22
100.000000000000000
1000.000000000000000
280.000000000000000
10
62
111
16
Pass Band [Hz]
10
93
111
16
Stop Band [Hz]
370
140
99
23
design
370
60
64
23
#lcdNumberFilterOrder {
color: green;
background: black;
}
#lcdNumberFilterOrder:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
370
90
64
23
#lcdNumberFTauDead {
color: green;
background: black;
}
#lcdNumberFTauDead:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
230
60
57
14
Order
230
91
121
20
dead time [ms]
10
122
81
16
gpass [dB]
10
153
91
16
gstop [dB]
130
120
71
22
3
1.000000000000000
0.010000000000000
0.010000000000000
130
150
71
22
5.000000000000000
130
30
71
25
<html><head/><body><p>In case of off-resonant transmitter pulse, you can set the central frequency that will be used for all processing. This has the biggest impact on the band-pass filter, and the frequencies used in inversion. </p></body></html>
0
100.000000000000000
5001.000000000000000
1.000000000000000
1000.000000000000000
10
33
91
16
Central ν Hz
230
32
41
16
Type
370
250
99
23
save
false
10
180
111
21
Plot
true
true
false
470
170
480
101
0
0
480
90
Downsample and truncate (anti-alias)
true
10
33
111
16
Truncate [ms]
170
30
101
25
<html><head/><body><p>Set the final length of your processed record. Note that the use of Adaptive filtering allows for the removal of additional late times. If you do not wish to truncate, leave as 0.</p></body></html>
1000
0
370
70
99
23
#downSampleGO {
background: green;
}
#downSampleGO:disabled{
background: black;
}
GO
10
63
131
16
Downsample factor
170
60
101
25
1
5
5
3
475
460
30
0
0
460
30
false
470
280
480
141
0
90
FD Window Filter
true
120
30
111
23
-
Hamming
-
Hanning
-
Flat top
-
Rectangular
20
35
57
14
Type
20
63
71
16
Width [Hz]
120
60
111
22
1
1000.000000000000000
600.000000000000000
370
110
99
23
#windowFilterGO {
background: green;
}
#windowFilterGO:disabled{
background: black;
}
GO
20
90
271
16
Central freq from IIR Band-Pass
370
80
99
23
design
260
60
64
23
#lcdWinDead {
color: green;
background: black;
}
#lcdWinDead:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
250
40
121
20
dead time [ms]
false
10
740
461
101
0
100
Processed data paramaters
20
33
121
16
FID 1 length [s]
false
150
30
64
23
#lcdNumberFID1Length {
color: green;
background: black;
}
#lcdNumberFID1Length:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
false
150
60
64
23
#lcdNumberFID2Length {
color: green;
background: black;
}
#lcdNumberFID2Length:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
20
63
121
16
FID 2 length [s]
false
370
33
64
23
#lcdNumberResampFreq {
color: green;
background: black;
}
#lcdNumberResampFreq:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
240
33
121
21
ν Sampling [Hz]
240
63
121
16
total dead time
false
370
60
64
23
#lcdTotalDeadTime {
color: green;
background: black;
}
#lcdTotalDeadTime:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
false
470
640
481
80
Combine (sum) data channels
true
370
50
99
23
<html><head/><body><p>For some types of multichannel data, the channels can be summed into composite channels. This method sums all channels down to a recursion level of 2. For single loop datasets do not use this method. </p></body></html>
#sumDataGO {
background: green;
}
#sumDataGO:disabled{
background: black;
}
GO
false
10
500
460
231
0
0
460
230
false
Header file info
false
10
20
441
41
0
0
8
true
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
p, li { white-space: pre-wrap; }
</style></head><body style=" font-family:'Noto Sans'; font-size:8pt; font-weight:400; font-style:italic;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'DejaVu Serif'; font-size:9pt;">Load supported RAW Dataset header from file menu</span></p></body></html>
10
70
81
21
Pulse Type
160
70
271
23
0
0
true
true
Qt::ScrollBarAlwaysOff
Qt::ScrollBarAlwaysOff
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
p, li { white-space: pre-wrap; }
</style></head><body style=" font-family:'Noto Sans'; font-size:10pt; font-weight:400; font-style:italic;">
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'DejaVu Serif';"><br /></p></body></html>
160
100
64
23
0
0
8
false
#lcdNumberNuTx {
color: green;
background: black;
}
#lcdNumberNuTx:disabled {
color: grey;
background: dark grey;
}
QFrame::Raised
1
0
QLCDNumber::Flat
0.000000000000000
370
100
64
23
#lcdNumberTuneuF {
color: green;
background: black;
}
#lcdNumberTuneuF:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
160
130
64
23
#lcdNumberTauPulse1 {
color: green;
background: black;
}
#lcdNumberTauPulse1:disabled {
color: grey;
background: dark grey;
}
QFrame::Raised
1
0
QLCDNumber::Flat
10
100
91
21
ν Tx [Hz]
10
130
141
21
τ Pulse 1 [ms]
250
160
91
21
τ Delay [ms]
160
160
64
23
#lcdNumberTauPulse2 {
color: green;
background: black;
}
#lcdNumberTauPulse2:disabled{
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
250
100
111
21
Tx tuning [μF]
250
130
111
21
ν Sampling [Hz]
false
370
130
64
23
#lcdNumberSampFreq {
color: green;
background: black;
}
#lcdNumberSampFreq:disabled{
color: grey;
background: dark grey;
}
1
0
5
QLCDNumber::Flat
false
370
160
64
23
#lcdNumberTauDelay {
color: green;
background: black;
}
#lcdNumberTauDelay:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
10
160
131
21
τ Pulse 2 [ms]
160
190
64
23
#lcdNumberNQ {
color: green;
background: black;
}
#lcdNumberNQ:disabled{
color: grey;
background: dark grey;
}
QLCDNumber::Flat
10
190
141
21
<html><head/><body><p>Number of pulse moments (q)</p></body></html>
Num q
Noise Cancelation
false
450
10
480
83
FD (static transfer function) Noise cancellation
true
370
50
99
23
#adaptFDGO {
background: green;
}
#adaptFDGO:disabled{
background: black;
}
GO
20
30
271
16
Utilizes a window filter (as defined above)
20
50
281
16
Uses central v from Band-pass filter
false
450
110
480
120
0
0
480
120
Time-domain RLS Active Noise Suppresion
false
true
370
90
99
23
#adaptGO {
background: green;
}
#adaptGO:disabled{
background: black;
}
GO
150
30
71
22
<html><head/><body><p>Number of taps in the time-domain filter</p></body></html>
2000
200
150
60
71
22
Forgetting factor, how quickly does the filter adapt.
0.200000000000000
1.000000000000000
0.990000000000000
10
32
71
16
Filter Taps
10
62
131
16
Forgetting factor (λ)
10
92
111
16
Truncate [ms]
150
90
71
22
<html><head/><body><p>This filter is a time-domain filter that takes some time to get going. Time-domain filters do a better job compared to frequency-domain filters in the presence of non-stationary noise. </p><p>The filter is run backwards, so often the late times will not be cancelled as well. You may trim records off the back using this input. </p></body></html>
<html><head/><body><p>This filter is a time-domain filter that takes some time to get going. Time-domain filters do a better job compared to frequency-domain filters in the presence of non-stationary noise. </p><p>The filter is run backwards, so often the late times will not be cancelled as well. You may trim records off the back using this input. </p></body></html>
1000.000000000000000
800.000000000000000
370
30
81
22
4
0.000100000000000
0.100000000000000
0.000100000000000
0.010000000000000
260
33
57
14
Mu
260
63
91
16
PCA on ref
370
60
79
22
<html><head/><body><p>Perform priciple component analysis on the reference channels? If <span style=" font-weight:600;">yes</span>, PCA will performed on the reference channels and the rotated channels will be used for noise cancelation rather than the raw noise channels. In the case of multiple noise sources where one dominantes across channels, better performance can be realized.</p></body></html>
1
-
Yes
-
No
Data QC
3
10
941
571
0
0
460
460
3
590
460
30
0
0
460
30
false
0
750
460
121
0
0
460
100
TD SmartStac&k^TM
true
90
65
78
25
-
MAD
-
none
10
70
71
16
Outlier test
350
70
99
23
#FDSmartStackGO {
background: green;
}
#FDSmartStackGO:disabled{
background: black;
}
GO
90
90
121
22
<html><head/><body><p>The threshold value used in the median absolute deviation outlier test. The default value of 1.4826 follows from an assumption of Gaussian noise, lower cutoff values are stricter and will throw out more samples. </p></body></html>
4
10.000000000000000
1.480000000000000
false
0
640
461
101
Pulse Moment Calculation
true
350
70
99
23
#calcQGO {
background: green;
}
#calcQGO:disabled{
background: black;
}
GO
false
479
640
461
121
&Quadrature Detect
true
350
60
99
23
#qdGO {
background: green;
}
#qdGO:disabled{
background: black;
}
GO
90
30
91
28
0
0
20
34
61
18
Trim
230
90
101
22
-
Real/Imag
-
Amp/Phase
-
Phased
false
350
90
99
23
#plotQD {
background: green;
}
#plotQD:disabled{
background: black;
}
PLOT
false
false
480
780
461
91
Gate integrate
true
350
30
99
23
#gateIntegrateGO {
background: green;
}
#gateIntegrateGO:disabled{
background: black;
}
GO
130
28
71
23
6
30
20
20
30
111
16
Gates per decade
230
60
101
22
-
Real/Imag
-
Amp/Phase
-
Phased
false
350
60
99
23
#plotGI {
background: green;
}
#plotGI:disabled{
background: black;
}
PLOT
false
Survey Parameters
-
Survey site information
20
37
121
16
Temperature [°C]
20
79
81
16
Survey date
10
190
61
16
Location
10
210
441
51
20
160
371
16
Qt::Horizontal
0
260
191
31
<html><head/><body><p>Comments and field notes</p></body></html>
10
300
441
221
false
150
110
118
29
true
150
70
112
29
true
24
117
81
16
Survey time
150
30
111
29
20.000000000000000
10
560
641
291
<html><head/><body><p>This table is used to enter coil geometries the format is as follows: each row specifies a single point on a coil. The first column is the coil index (using the GMR channel is useful), the next three colums specify the point in Northing, Easting, and Elevation. These can either be local coordinates or global ones. The final column specifies the loop radius if it is a circle or figure 8, for non circular or figure 8 loops leave this column blank. For figure-8 loops the coils do not need to be touching (see Irons and Kass, 2017). If a given index has 1 row it will be a circular loop, two rows will be a figure 8, and more than that will be a polygonal representation of the points, linearlly interpolated between them. </p></body></html>
10
540
91
16
Surface loops
460
0
500
500
0
0
500
500
790
675
101
31
1
80000.000000000000000
50000.000000000000000
670
640
111
20
B Declination [°]
670
600
111
20
B Inclination [°]
790
635
101
31
1
-90.000000000000000
90.000000000000000
0.000000000000000
790
595
101
31
1
-90.000000000000000
90.000000000000000
45.000000000000000
670
680
111
20
B Intensity [nT]
670
560
121
16
Magnetic field
670
540
251
20
Qt::Horizontal
Kernel calc
20
20
901
16
Qt::Horizontal
480
30
500
500
0
0
500
500
480
550
371
301
Integration Parameters
120
30
49
29
120
70
49
29
280
70
70
29
21
34
81
20
min. level
20
75
81
20
max. level
187
75
81
20
branch tol
210
260
141
29
10
160
171
29
10
210
171
31
210
210
141
29
210
160
141
29
10
260
171
29
10
130
63
20
Origin
210
130
63
20
Size
30
360
351
501
<html><head/><body><p>This table is used to enter coil geometries the format is as follows: each row specifies a single point on a coil. The first column is the coil index (using the GMR channel is useful), the next three colums specify the point in Northing, Easting, and Elevation. These can either be local coordinates or global ones. The final column specifies the loop radius if it is a circle or figure 8, for non circular or figure 8 loops leave this column blank. For figure-8 loops the coils do not need to be touching (see Irons and Kass, 2017). If a given index has 1 row it will be a circular loop, two rows will be a figure 8, and more than that will be a polygonal representation of the points, linearlly interpolated between them. </p></body></html>
Forward modelling
Inversion
290
140
311
141
#invertButton {
font-size:29pt;
font-weight: bold;
color: white;
background: red;
}
Invert
Log
10
30
921
821
0
0
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
p, li { white-space: pre-wrap; }
</style></head><body style=" font-family:'Noto Sans'; font-size:10pt; font-weight:400; font-style:normal;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:9pt;">All processing steps are recorded here for your records</span></p></body></html>
420
10
121
20
Processing log
&Close
&About Akvo
Nothing
Temperature
false
&Open GMR RAW header
Open GMR RAW dataset(s)
true
Process
true
Load Avko &Preprocessed dataset
false
Load &VC Preprocessed dataset
true
&Save Preprocessed Dataset
&Export to Lemma
MyDynamicMplCanvas
QWidget
akvo.gui.mydynamicmplcanvas.h
1
clicked()
MyDynamicMplCanvasNavigator
QWidget
akvo.gui.mydynamicmplcanvasnavigator.h
actionClose
triggered()
MainWindow
close()
-1
-1
437
386
actionAboutAkvo
triggered()
MainWindow
show()
-1
-1
424
387