Save and restore total Doppler in Echo-mode .wav files, and display that as Doppler.

This commit is contained in:
Joe Taylor 2022-08-17 09:42:33 -04:00
parent 92df1fbd0c
commit bfb5665c36
2 changed files with 17 additions and 14 deletions

View File

@ -1,15 +1,17 @@
subroutine save_echo_params(nDop,nfrit,f1,fspread,id2,idir)
subroutine save_echo_params(nDopTotal,nDopAudio,nfrit,f1,fspread,id2,idir)
integer*2 id2(10)
integer*2 id2a(10)
integer*2 id2(12)
integer*2 id2a(12)
real*8 fspread,fspread0
equivalence (nDop0,id2a(1))
equivalence (nfrit0,id2a(3))
equivalence (f10,id2a(5))
equivalence (fspread0,id2a(7))
equivalence (nDopTotal0,id2a(1))
equivalence (nDopAudio0,id2a(3))
equivalence (nfrit0,id2a(5))
equivalence (f10,id2a(7))
equivalence (fspread0,id2a(9))
if(idir.gt.0) then
nDop0=nDop
nDopTotal0=nDopTotal
nDopAudio0=nDopAudio
nfrit0=nfrit
f10=f1
fspread0=fspread
@ -17,7 +19,8 @@ subroutine save_echo_params(nDop,nfrit,f1,fspread,id2,idir)
else
id2a=id2
id2(1:10)=0
nDop=nDop0
nDopTotal=nDopTotal0
nDopAudio=nDopAudio0
nfrit=nfrit0
f1=f10
fspread=fspread0

View File

@ -153,7 +153,7 @@ extern "C" {
int savec2_(char const * fname, int* TR_seconds, double* dial_freq, fortran_charlen_t);
void save_echo_params_(int* ndop, int* nfrit, float* f1, double* fspread, short id2[], int* idir);
void save_echo_params_(int* ndoptotal, int* ndop, int* nfrit, float* f1, double* fspread, short id2[], int* idir);
void avecho_( short id2[], int* dop, int* nfrit, int* nauto, int* nqual, float* f1,
float* level, float* sigdb, float* snr, float* dfreq,
@ -1603,16 +1603,17 @@ void MainWindow::dataSink(qint64 frames)
float width=0.0;
echocom_.nclearave=m_nclearave;
int nDop=m_fAudioShift;
int nDopTotal=m_fDop;
if(m_diskData) {
int idir=-1;
save_echo_params_(&nDop,&nfrit,&f1,&m_fSpread,dec_data.d2,&idir);
save_echo_params_(&nDopTotal,&nDop,&nfrit,&f1,&m_fSpread,dec_data.d2,&idir);
width=m_fSpread;
}
avecho_(dec_data.d2,&nDop,&nfrit,&nauto,&nqual,&f1,&xlevel,&sigdb,
&dBerr,&dfreq,&width,&m_diskData);
QString t;
t = t.asprintf("%3d %7.1f %7.1f %7.1f %7.1f %7d %7.1f %3d",echocom_.nsum,xlevel,sigdb,
dBerr,dfreq,nDop,width,nqual);
dBerr,dfreq,nDopTotal,width,nqual);
QString t0;
if(m_diskData) {
t0=t0.asprintf("%06d ",m_UTCdisk);
@ -1624,7 +1625,7 @@ void MainWindow::dataSink(qint64 frames)
if(m_echoGraph->isVisible()) m_echoGraph->plotSpec();
if(m_saveAll) {
int idir=1;
save_echo_params_(&nDop,&nfrit,&f1,&m_fSpread,dec_data.d2,&idir);
save_echo_params_(&m_fDop,&nDop,&nfrit,&f1,&m_fSpread,dec_data.d2,&idir);
}
m_nclearave=0;
//Don't restart Monitor after an Echo transmission
@ -1632,7 +1633,6 @@ void MainWindow::dataSink(qint64 frames)
monitor(false);
m_bEchoTxed=false;
}
// return;
}
if(m_mode=="FreqCal") {
return;