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 0 0 1000 30 &File &Help &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