MainWindow
0
0
1142
875
1142
0
MainWindow
-
0
0
550
0
550
16777215
true
0
0
537
882
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 cancelation
<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.
0.200000000000000
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
80
20
16777215
16777215
#calcQGO {
background: green;
}
#calcQGO:disabled{
background: black;
}
GO
-
0
0
0
10
16777215
10
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
META
-
Surface Loops
-
<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
505
250
505
16777215
Survey site information
-
B Intensity [nT]
-
1
-90.000000000000000
90.000000000000000
0.000000000000000
-
true
-
1
-90.000000000000000
90.000000000000000
45.000000000000000
-
20.000000000000000
-
B Declination [°]
-
Temperature [°C]
-
Survey date
-
B Inclination [°]
-
-
true
2019
1
1
-
Survey time
-
1
80000.000000000000000
50000.000000000000000
-
Location
-
Comments and field notes
-
0
0
490
0
490
420
false
Kern
30
10
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
320
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>
Model
40
80
411
141
1
0
0
100
30
Page 1
0
0
411
77
Page 2
INV
130
140
311
141
#invertButton {
font-size:29pt;
font-weight: bold;
color: white;
background: red;
}
Invert
Appraisal
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
-
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
-
τ Delay [ms]
-
0
0
#lcdNumberTauPulse2 {
color: green;
background: black;
}
#lcdNumberTauPulse2:disabled{
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
false
0
0
16777215
23
#lcdNumberTauDelay {
color: green;
background: black;
}
#lcdNumberTauDelay:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
FID 2 length [s]
-
FID 1 length [s]
-
false
0
0
#lcdNumberSampFreq {
color: green;
background: black;
}
#lcdNumberSampFreq:disabled{
color: grey;
background: dark grey;
}
1
0
5
QLCDNumber::Flat
-
false
0
0
16777215
23
#lcdNumberFID2Length {
color: green;
background: black;
}
#lcdNumberFID2Length:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
Pulse Type
-
false
0
0
16777215
23
#lcdNumberFID1Length {
color: green;
background: black;
}
#lcdNumberFID1Length: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
-
ν 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: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>
-
false
0
0
#lcdNumberResampFreq {
color: green;
background: black;
}
#lcdNumberResampFreq:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
false
0
0
#lcdTotalDeadTime {
color: green;
background: black;
}
#lcdTotalDeadTime:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
Instrument sampling ν [Hz]
-
0
0
#lcdNumberTauPulse1 {
color: green;
background: black;
}
#lcdNumberTauPulse1:disabled {
color: grey;
background: dark grey;
}
QFrame::Raised
1
0
QLCDNumber::Flat
-
total dead time [ms]
-
<html><head/><body><p>Number of pulse moments (q)</p></body></html>
Num q
-
0
0
8
false
#lcdNumberNuTx {
color: green;
background: black;
}
#lcdNumberNuTx:disabled {
color: grey;
background: dark grey;
}
QFrame::Raised
1
0
QLCDNumber::Flat
0.000000000000000
-
τ Pulse 2 [ms]
-
0
0
#lcdNumberTuneuF {
color: green;
background: black;
}
#lcdNumberTuneuF:disabled {
color: grey;
background: dark grey;
}
1
0
QLCDNumber::Flat
-
re-sampling ν [Hz]
-
τ Pulse 1 [ms]
-
Tx tuning [μF]
&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