MainWindow
0
0
1142
875
1142
0
MainWindow
-
0
0
500
0
-
0
0
500
300
-
0
0
460
38
-
false
0
0
460
50
false
false
Expand header file information
false
true
-
0
0
0
23
16777215
23
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>
-
0
0
540
0
-
false
0
0
16777215
23
#lcdNumberFID1Length {
color: green;
background: black;
}
#lcdNumberFID1Length:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
<html><head/><body><p>Number of pulse moments (q)</p></body></html>
Num q
-
false
0
0
16777215
23
#lcdNumberFID2Length {
color: green;
background: black;
}
#lcdNumberFID2Length:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
re-sampling ν [Hz]
-
false
0
0
#lcdNumberSampFreq {
color: green;
background: black;
}
#lcdNumberSampFreq:disabled{
color: grey;
background: dark grey;
}
1
0
5
QLCDNumber::Flat
-
0
0
#lcdNumberTuneuF {
color: green;
background: black;
}
#lcdNumberTuneuF:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
Pulse Type
-
total dead time [ms]
-
false
0
0
#lcdNumberResampFreq {
color: green;
background: black;
}
#lcdNumberResampFreq:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
0
0
#lcdNumberNQ {
color: green;
background: black;
}
#lcdNumberNQ:disabled{
color: grey;
background: dark grey;
}
QLCDNumber::Flat
-
FID 2 length [s]
-
τ Delay [ms]
-
0
0
#lcdNumberTauPulse1 {
color: green;
background: black;
}
#lcdNumberTauPulse1:disabled {
color: grey;
background: dark grey;
}
QFrame::Raised
1
0
QLCDNumber::Flat
-
false
0
0
#lcdTotalDeadTime {
color: green;
background: black;
}
#lcdTotalDeadTime:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
τ Pulse 1 [ms]
-
FID 1 length [s]
-
Tx tuning [μF]
-
τ Pulse 2 [ms]
-
Instrument sampling ν [Hz]
-
0
0
8
false
#lcdNumberNuTx {
color: green;
background: black;
}
#lcdNumberNuTx:disabled {
color: grey;
background: dark grey;
}
QFrame::Raised
1
0
QLCDNumber::Flat
0.000000000000000
-
false
0
0
16777215
23
#lcdNumberTauDelay {
color: green;
background: black;
}
#lcdNumberTauDelay:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
ν Tx [Hz]
-
0
0
64
23
64
23
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:12pt; 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'; font-size:10pt;"><br /></p></body></html>
-
0
0
#lcdNumberTauPulse2 {
color: green;
background: black;
}
#lcdNumberTauPulse2:disabled{
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
0
0
550
0
550
16777215
true
0
0
537
982
0
0
0
0
16777215
16777215
-
0
0
525
0
525
16777215
true
Qt::LeftToRight
0
Qt::ElideLeft
true
false
true
0
0
940
0
16777215
16777215
Load
-
false
0
0
505
125
505
16777215
Input parameters
-
Stacks
-
16777215
16777215
<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
-
Dead time [ms]
-
16777215
16777215
<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
-
Data Chs.
-
16777215
16777215
<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
-
Reference Chs.
-
16777215
16777215
<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
-
Process FID
-
16777215
16777215
<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
Plot RAW
true
-
false
#loadDataPushButton {
background: green;
}
#loadDataPushButton:disabled {
background: black;
}
Load Data
-
false
0
0
505
90
505
16777215
Downsample and truncate (anti-alias)
true
-
16777215
16777215
<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
-
Truncate [ms]
-
16777215
16777215
1
5
5
-
Downsample factor
-
#downSampleGO {
background: green;
}
#downSampleGO:disabled{
background: black;
}
GO
-
Plot
true
-
false
0
0
505
90
505
16777215
FD Window Filter (Central freq from IIR Band-Pass)
true
-
dead time [ms]
-
design
-
#windowFilterGO {
background: green;
}
#windowFilterGO:disabled{
background: black;
}
GO
-
Width [Hz]
-
1
1200.000000000000000
600.000000000000000
-
0
0
#lcdWinDead {
color: green;
background: black;
}
#lcdWinDead:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
-
Type
-
-
Hamming
-
Hanning
-
Flat top
-
Rectangular
-
<html><head/><body><p>Sets whether or not the dead time will be trimmed from the beginning and end of the signal. When doing a cascade of filters, users may wish to hold off on edge effect removal. </p></body></html>
Trim dead time
true
-
false
0
0
505
180
505
16777215
IIR Band-Pass Filter
true
false
-
Pass Band [Hz]
-
#bandPassGO {
background: green;
}
#bandPassGO:disabled{
background: black;
}
GO
-
0
0
0
0
16777215
16777215
#lcdNumberFTauDead {
color: green;
background: black;
}
#lcdNumberFTauDead:disabled {
color: grey;
background: dark grey;
}
5
QLCDNumber::Flat
-
Order
-
Central ν Hz
-
design
-
100.000000000000000
1600.000000000000000
280.000000000000000
-
gstop [dB]
-
25.000000000000000
600.000000000000000
5.000000000000000
50.000000000000000
-
0
0
#lcdNumberFilterOrder {
color: green;
background: black;
}
#lcdNumberFilterOrder:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
-
3
1.000000000000000
0.010000000000000
0.010000000000000
-
Type
-
false
Plot
true
true
-
<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
-
5.000000000000000
-
Stop Band [Hz]
-
gpass [dB]
-
0
0
true
true
Hello
-
Butterworth
-
Chebychev Type II
-
Elliptic
-
dead time [ms]
-
false
0
0
505
100
505
200
Combine (sum) data channels
true
-
Type
-
-
sum
-
difference
-
100
16777215
<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
Noise removal
<html><head/><body><p>This tab contains noise cancellation algorithms. The frequency-domain algorithm is often less effective than the time domain approach. We often discourage using the frequency domain algorithm. </p></body></html>
-
false
0
0
505
100
16777215
430
<html><head/><body><p>When reference channels are not available, noise can be removed through harmonic modelling. Users can specify the approximate base frequency. The algorithm utilizes a non-linear search for the actual frequency to use. The number of harmonics can also be specified. </p></body></html>
Model-based harmonic removal
true
true
-
First harmonic 2
-
N segments
-
Qt::LeftToRight
#harmonicGO {background: green;}
#harmonicGO:disabled{background: black;}
GO
-
Last harmonic 2
-
1
3
-
25000.000000000000000
60.000000000000000
-
Plot
true
-
#lcdf0NK2 {
color: green;
background: black;
}
#lcdf0NK2:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
-
1
-
Sub-harmonics
-
Qt::Horizontal
-
2
40
-
#lcdH1F {
color: green;
background: black;
}
#lcdH1F:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
-
Last harmonic 1
-
Qt::Horizontal
-
1
50
1
-
Qt::Horizontal
-
Base freq. search
-
Qt::Horizontal
-
Qt::Horizontal
-
Sub-harmonics
-
First harmonic 1
-
1
2
1
-
25000.000000000000000
0.100000000000000
60.000000000000000
-
#lcdH1F2{
color: green;
background: black;
}
#lcdH1F2:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
-
Qt::Horizontal
-
Qt::Horizontal
-
Base freq. 2
-
<html><head/><body><p>Would you like to calculate subharmonics? For instance, setting this to 1, will calculate only the exact harmonics, setting this to 2 will calculate 1/2 step subharmonics (i.e. if the baseline frequency is 60 Hz, this will result in calcualtion of 30 Hz subharmonics)</p></body></html>
1
3
1
-
N freqs
-
2
40
-
#lcdf0NK {
color: green;
background: black;
}
#lcdf0NK:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
0
-
#lcdHNF {
color: green;
background: black;
}
#lcdHNF:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
-
Qt::Horizontal
-
1
100
1
-
#lcdHNF2 {
color: green;
background: black;
}
#lcdHNF2:disabled {
color: grey;
background: dark grey;
}
QLCDNumber::Flat
-
Base freq. 1
-
Qt::Horizontal
-
-
<html><head/><body><p>When searching for the fundamental frequency, should the entire ensemble of harmonics be included? Reducing this number can accelerate the algorithm significantly. If a selection other than "All" is chosen, once the fundamental frequency is found, the whole set of harmonics will be included in the modelling. </p></body></html>
-
All
-
First
-
-
<html><head/><body><p>If bounds is selected, this is the variance in the fundamental frequency which will be searched from the <span style=" font-weight:600;">prior </span>result. As such, for each record, the fundamental frequency can shift by this much (in either direction) from the prior record. </p></body></html>
3
0.005000000000000
10.000000000000000
0.001000000000000
0.125000000000000
-
Bounded search
true
-
proc ref. channels
true
-
false
0
0
505
120
505
200
<html><head/><body><p>This filter impliments a time-domain adaptive noise cancelation approach. The number of filter taps can be specified. The filter works backwards and starts at the END of the record working towards the begining. There is some degree of roll-on training, and it's generally a good idea to truncate by roughly the number of taps times the sampling frequency. </p></body></html>
Time-domain RLS Active Noise Suppresion
false
true
-
Filter Taps
-
<html><head/><body><p>Number of taps in the time-domain filter</p></body></html>
2000
200
-
Mu
-
4
0.000100000000000
0.100000000000000
0.000100000000000
0.010000000000000
-
Forgetting factor (λ)
-
Forgetting factor, how quickly does the filter adapt.
3
0.950000000000000
1.000000000000000
0.990000000000000
-
PCA on ref
-
<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
-
Truncate [ms]
-
<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
-
#adaptGO {
background: green;
}
#adaptGO:disabled{
background: black;
}
GO
-
false
0
0
505
200
505
200
<html><head/><body><p>This filter impliments the classic frequency domain transfer function approach to noise cancellation. However, Akvo does not have a mechanism to cull records at this stage and as such, performance of this filter is subpar whenever broadband (spikes) features are present in the record. In most instances the tie domain RLS approach above is preferable. </p><p><br/></p><p>Use of this filter is generally discouraged. </p></body></html>
FD (static transfer function) Noise cancellation
true
-
Uses central v from Band-pass filter
-
#adaptFDGO {
background: green;
}
#adaptFDGO:disabled{
background: black;
}
GO
-
16777215
20
Utilizes a window filter from load
QC
-
false
0
0
505
100
505
150
Pulse Moment Calculation
true
-
0
0
0
0
16777215
40
#calcQGO {
background: green;
}
#calcQGO:disabled{
background: black;
}
GO
-
0
0
0
0
16777215
16777215
Fourier-based calculation
-
false
0
0
505
150
505
16777215
TD SmartStac&k^TM
true
-
Outlier test
-
-
MAD
-
none
-
#FDSmartStackGO {
background: green;
}
#FDSmartStackGO:disabled{
background: black;
}
GO
-
<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
0
505
100
505
200
&Quadrature Detect
true
-
-
Trust region reflective
-
Dogbox
-
Levenberg-Marquardt
-
false
#plotQD {
background: green;
}
#plotQD:disabled{
background: black;
}
PLOT
false
-
Method/loss
-
0
2
-
#qdGO {
background: green;
}
#qdGO:disabled{
background: black;
}
GO
-
-
Real/Imag
-
Amp/Phase
-
Phased
-
Trim
-
-
linear
-
soft L1
-
Cauchy
-
Huber
-
Qt::Horizontal
-
Qt::Horizontal
-
Qt::Horizontal
-
false
0
0
505
200
505
200
Gate integrate
true
-
Gates per decade
-
#gateIntegrateGO {
background: green;
}
#gateIntegrateGO:disabled{
background: black;
}
GO
-
false
#plotGI {
background: green;
}
#plotGI:disabled{
background: black;
}
PLOT
false
-
6
30
20
-
-
Real/Imag
-
Amp/Phase
-
Phased
true
META
-
true
0
0
505
250
505
16777215
Survey site information
-
20.000000000000000
-
<html><head/><body><p>Ellipsoid model for UTM coordinates</p></body></html>
-
Local
-
WGS84
-
NAD83
-
Lat. Band
-
true
-
1
-90.000000000000000
90.000000000000000
45.000000000000000
-
<html><head/><body><p>B<span style=" vertical-align:sub;">0</span> [inc°,dec°,nT]</p></body></html>
-
Ellipsoid
-
Location
-
true
false
-
<html><head/><body><p>Latitude band</p></body></html>
-
Local
-
A
-
B
-
C
-
D
-
E
-
F
-
G
-
H
-
J
-
K
-
L
-
M
-
N
-
P
-
Q
-
R
-
S
-
T
-
U
-
V
-
W
-
X
-
true
2019
1
1
-
1
80000.000000000000000
50000.000000000000000
-
16777215
20
UTM
-
1
-90.000000000000000
90.000000000000000
0.000000000000000
-
[Date, time,°C]
-
Coordinates
-
<html><head/><body><p>Specify the UTM zone. </p></body></html>
-
Local
-
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
-
Qt::Horizontal
-
Surface Loops
-
#removeLoopButton {
background: red;
}
#removeLoopButton:disabled {
background: black;
}
Remove
-
-
Tx/Rx
-
Tx Only
-
Rx Only
-
Noise ref.
-
#addLoopButton {
background: green;
}
#addLoopButton:disabled {
background: black;
}
Add
-
-
Circular
-
polygon
-
figure-8
-
-
#plotLoops {
background: green;
}
#plotLoops:disabled {
background: black;
}
Plot loops
-
Enter loop name
-
true
Comments and field notes
-
0
0
490
0
490
420
false
Kernel
-
Conductivty model
-
<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>
-
0
0
480
300
Integration Parameters
-
0.010000000000000
0.100000000000000
-
1.000000000000000
300.000000000000000
125.000000000000000
-
min. level
-
-
branch tol [nT]
-
1
18
8
-
Layers
-
Origin
-
3
0.001000000000000
1.000000000000000
-
Size
-
easting
-
1.000000000000000
500.000000000000000
200.000000000000000
-
max. level
-
northing
-
1.000000000000000
500.000000000000000
200.000000000000000
-
-
1
10
-
depth
-
1
200
50
-
N Layers
-
100
0
-
Geometric
-
Log
-
Linear
-
spacing
-
Qt::Horizontal
-
Thick 1
-
Thick N
-
0.010000000000000
0.500000000000000
-
0.010000000000000
10.000000000000000
-
100
40
#calcK0{
background: green;
}
#calcK0:disabled {
background: black;
}
Calc Kernel
Modelling
40
80
411
141
1
0
0
100
30
Page 1
0
0
411
67
Page 2
QT Inversion
-
16777215
200
QT T2* distribution
-
T2* Low (ms)
-
1.000000000000000
30.000000000000000
10.000000000000000
-
T2* High (ms)
-
10.000000000000000
2000.000000000000000
1000.000000000000000
-
N T2*
-
10
35
-
16777215
500
QT Inversion
-
#invertButton {
font-size:29pt;
font-weight: bold;
color: white;
background: red;
}
Invert
-
initial alpha
-
10000000
1000000
-
Data channel
-
-
Smallest
-
Smoothest
-
Both
-
-
Chan. 1
-
Chan. 2
-
Chan. 3
-
Chan. 4
-
T2* model objective
-
-
Smallest
-
Depth model objective
Appraisal
0
0
505
327
Surface Loops
Log
10
30
500
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:12pt; 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>
180
10
121
20
Processing log
&Open GMR Header
Open Akvo Preprocessed dataset
Open VC Preprocessed dataset
Save processing
Export to Lemma
Close
About
true
true
Preprocessing
true
Modelling
true
Inversion
MyDynamicMplCanvas
QWidget
akvo.gui.mydynamicmplcanvas.h
1
clicked()
MyDynamicMplCanvasNavigator
QWidget
akvo.gui.mydynamicmplcanvasnavigator.h