Return-Path: Received: from post.thorcom.com (post.thorcom.com [195.171.43.25]) by klubnl.pl (8.14.4/8.14.4/Debian-8+deb8u2) with ESMTP id w1DL8Ac3016577 for ; Tue, 13 Feb 2018 22:08:13 +0100 Received: from majordom by post.thorcom.com with local (Exim 4.14) id 1elhjR-00033b-C3 for rs_out_1@blacksheep.org; Tue, 13 Feb 2018 21:03:17 +0000 Received: from [195.171.43.32] (helo=relay1.thorcom.net) by post.thorcom.com with esmtp (Exim 4.14) id 1elhjQ-00033S-He for rsgb_lf_group@blacksheep.org; Tue, 13 Feb 2018 21:03:16 +0000 Received: from porthos.netcom.co.uk ([217.72.171.73]) by relay1.thorcom.net with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.89) (envelope-from ) id 1elhjN-0006nF-L4 for rsgb_lf_group@blacksheep.org; Tue, 13 Feb 2018 21:03:15 +0000 X-DKIM-Result: Domain=abelian.org Result=Signature OK DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=abelian.org ; s=default; h=Content-Transfer-Encoding:Content-Type:In-Reply-To: MIME-Version:Date:Message-ID:From:References:To:Subject:Sender:Reply-To:Cc: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=EFe+Ox6a0gmxRuHr8Y3V4C/1uj0BSKqdtRCB+CmlwmQ=; b=nqySjekV40CRQy7AcSYt1J7yJu aGpIhYW6Diy2ZBZ9wJ36wXxmp9/+IcRRJSul1qlzEMD+1AOUu9xvreHIlcRqXhSO1yNcpCs/WBJYt fTnrsi5tkM4nAZGMAf1L6xTMeAxkFZLsHyBgAu7l4sqV0MhFdbDEe3WVeWoa5QMGsdHc=; Received: from i-194-106-52-83.freedom2surf.net ([194.106.52.83]:37749 helo=pn.abelian.org) by porthos.netcom.co.uk with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.89_1) (envelope-from ) id 1elhjL-00008p-C6 for rsgb_lf_group@blacksheep.org; Tue, 13 Feb 2018 21:03:11 +0000 Received: from [127.0.0.1] (localhost [127.0.0.1]) by pn.abelian.org (Postfix) with ESMTP id 8019340048F for ; Tue, 13 Feb 2018 21:03:10 +0000 (UTC) To: rsgb_lf_group@blacksheep.org References: <16190d3155b-c8f-1c19b@webjas-vab095.srv.aolmail.net> From: Paul Nicholson Message-ID: <319348e4-b241-c703-85c9-ba8598075f5c@abelian.org> Date: Tue, 13 Feb 2018 21:03:10 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: <16190d3155b-c8f-1c19b@webjas-vab095.srv.aolmail.net> Content-Language: en-US X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - porthos.netcom.co.uk X-AntiAbuse: Original Domain - blacksheep.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - abelian.org X-Get-Message-Sender-Via: porthos.netcom.co.uk: authenticated_id: catchall@abelian.org X-Authenticated-Sender: porthos.netcom.co.uk: catchall@abelian.org X-Spam-Score: 0.0 (/) X-Spam-Report: Spam detection software, running on the system "relay1.thorcom.net", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: I have only time for a quick reply for now... The timing and phase are not upset by passing the signal through vtfilter, or vtresample, or any of the other utilities. Of course if you give vtfilter an eqmap that specifies a phase shift, then the phase will shift (but not the timing). Ditto for vtmix if you give it a phase factor or complex coefficient. [...] Content analysis details: (0.0 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 T_DKIM_INVALID DKIM-Signature header exists but is not valid X-Scan-Signature: b8b011f938af8abc4b241335cabd0691 Subject: Re: ULF: On the way to results... | vlfrx tools - advice needed... Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on post.thorcom.com X-Spam-Level: X-Spam-Status: No, hits=0.9 required=5.0 tests=FROM_ENDS_IN_NUMS autolearn=no version=2.63 X-SA-Exim-Scanned: Yes Sender: owner-rsgb_lf_group@blacksheep.org Precedence: bulk Reply-To: rsgb_lf_group@blacksheep.org X-Listname: rsgb_lf_group X-SA-Exim-Rcpt-To: rs_out_1@blacksheep.org X-SA-Exim-Scanned: No; SAEximRunCond expanded to false I have only time for a quick reply for now... The timing and phase are not upset by passing the signal through vtfilter, or vtresample, or any of the other utilities. Of course if you give vtfilter an eqmap that specifies a phase shift, then the phase will shift (but not the timing). Ditto for vtmix if you give it a phase factor or complex coefficient. The filters produced by vtfilter -h options change only the amplitude, not the phase! They are not normal filters in that respect. You were lucky to get a good E + H sum without scaling amplitudes or phase shifting! I would expect that best results should be obtained by mixing the antennas first, then apply the blanking (for the reasons you mention). But, I usually find that blanking the channels first and then combining them, produces a slightly higher S/N, sometimes a couple of dB higher. I don't know why this is. > How can i mix E and H again from separate files? > Is it done with vtjoin? Yes, but don't use lock-free buffers. They're only good for 'slow' signals, ie at roughly real time rates. If you put a signal through a buffer during post-processing, the supplier of the signal might easily run faster than the consumer process and the buffer will overrun. You should never need a lock-free buffer during post processing. You can use the 'tee' program to split a signal several ways, stuffing each copy into a pipe (named or not). Look up 'Process Substitution' in the man page for bash, eg tee >(pipeline one) >(pipeline two) < input.vt | pipeline three where the three pipelines are arbitrary lists of shell commands. So assuming you've extracted E and H to signal-e.vt and signal-h.vt, each is a single channel, and they both cover about the same time range at the same sample rate, then vtjoin signal-e.vt signal-h.vt combined.vt will give you a 2-channel combined.vt with E on chan 1 and H on chan 2. Then mix with vtmix -c coef-e,coef-h combined.vt > mixed.vt where the coefs are your (possibly complex) mixing coefficients. Do it in one step with vtjoin signal-e.vt signal-h.vt - | vtmix -c coef-e,coef-h | ... where the dash tell vtjoin to output to standard output. My usual post processing is in this order: vtread -T (extract signal from recording) vtcat -p (to pad over any timing breaks) vtfilter -e eqmap -h ... (antenna/rx phase and amplitude EQ, and 3kHz bandpass before blanker) vtblank (-a12 night, -a24 day) vtmix (mix to form the antenna response, usually linear polarised cardioid but sometimes circular) vtmult (mix down to baseband) vtresample (often in two stages, down to 1Hz or 10Hz or so) ebnaut -d (decode) vtblank, by the way, blanks all signals together. In other words, if one channel exceeds the threshold, the blanking is applied to all the channels. This 'joint blanking' policy can be changed with -e and -b options. Joint is probably best. If one channel is blanked but not another, then your mix is briefly wrong during the blanked periods. -- Paul Nicholson --