mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-12-24 11:40:31 -05:00
Corrected the error in r357. Now does Leif's evaluation or best-contrast
waterfall for polarized signals correctly. Also fixed problem with disused FSK441 message templates in MAP65.INI. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/map65@358 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
612f13a0e7
commit
11b3ea184e
@ -17,7 +17,7 @@ F2PYONLY = ftn_init ftn_quit audio_init getfile azdist0 astro0 \
|
||||
SRCS2F90 = a2d.f90 astro0.f90 audio_init.f90 azdist0.f90 \
|
||||
decode1.f90 ftn_init.f90 ftn_quit.f90 wsjtgen.f90 \
|
||||
runqqq.f90 fivehz.f90 flushqqq.f90 map65a0.f90 \
|
||||
rfile.f90 rfile3a.f90 spec.f90 map65a.f90 display.f90 \
|
||||
rfile.f90 rfile3a.f90 spec.f90 map65a.f90 display.F90 \
|
||||
getfile.f90 getfile2.f90
|
||||
|
||||
SRCS2F77 = indexx.f gen65.f chkmsg.f \
|
||||
|
34
map65.py
34
map65.py
@ -922,25 +922,6 @@ def GenAltMsgs(event=NONE):
|
||||
tx6.insert(0,tx6alt.upper())
|
||||
altmsg=1
|
||||
|
||||
#------------------------------------------------------ setmsg
|
||||
def setmsg(template,r):
|
||||
msg=""
|
||||
npct=0
|
||||
for i in range(len(template)):
|
||||
if npct:
|
||||
if template[i]=="M": msg=msg+options.MyCall.get().upper().strip()
|
||||
if template[i]=="T": msg=msg+ToRadio.get().upper().strip()
|
||||
if template[i]=="R": msg=msg+r
|
||||
if template[i]=="G": msg=msg+options.MyGrid.get()[:4]
|
||||
if template[i]=="L": msg=msg+options.MyGrid.get()
|
||||
npct=0
|
||||
else:
|
||||
npct=0
|
||||
if template[i]=="%":
|
||||
npct=1
|
||||
else:
|
||||
msg=msg+template[i]
|
||||
return msg.upper()
|
||||
|
||||
#------------------------------------------------------ plot_large
|
||||
def plot_large():
|
||||
@ -1852,14 +1833,6 @@ try:
|
||||
options.DevoutName.set(value)
|
||||
Audio.gcom1.devout_name=(options.DevoutName.get()+' ')[:12]
|
||||
elif key == 'SamFacOut': options.samfacout.set(value)
|
||||
elif key == 'Template1': options.Template1.set(value.replace("_"," "))
|
||||
elif key == 'Template2': options.Template2.set(value.replace("_"," "))
|
||||
elif key == 'Template3': options.Template3.set(value.replace("_"," "))
|
||||
elif key == 'Template4': options.Template4.set(value.replace("_"," "))
|
||||
elif key == 'Template5': options.Template5.set(value.replace("_"," "))
|
||||
elif key == 'Template6':
|
||||
options.Template6.set(value.replace("_"," "))
|
||||
if options.Template6.get()==" ": options.Template6.set("")
|
||||
elif key == 'AddPrefix': options.addpfx.set(value.replace("_"," ").lstrip())
|
||||
elif key == 'AuxRA': options.auxra.set(value)
|
||||
elif key == 'AuxDEC': options.auxdec.set(value)
|
||||
@ -1936,13 +1909,6 @@ f.write("PttPort " + str(options.PttPort.get()) + "\n")
|
||||
f.write("Mileskm " + str(options.mileskm.get()) + "\n")
|
||||
f.write("AudioOut " + options.DevoutName.get() + "\n")
|
||||
f.write("SamFacOut " + str(options.samfacout.get()) + "\n")
|
||||
if options.Template6.get()=="": options.Template6.set("_")
|
||||
f.write("Template1 " + options.Template1.get().replace(" ","_") + "\n")
|
||||
f.write("Template2 " + options.Template2.get().replace(" ","_") + "\n")
|
||||
f.write("Template3 " + options.Template3.get().replace(" ","_") + "\n")
|
||||
f.write("Template4 " + options.Template4.get().replace(" ","_") + "\n")
|
||||
f.write("Template5 " + options.Template5.get().replace(" ","_") + "\n")
|
||||
f.write("Template6 " + options.Template6.get().replace(" ","_") + "\n")
|
||||
if options.addpfx.get().lstrip()=="": options.addpfx.set("_")
|
||||
f.write("AddPrefix " + options.addpfx.get().lstrip() + "\n")
|
||||
if options.auxra.get()=="": options.auxra.set("0")
|
||||
|
@ -19,7 +19,7 @@ subroutine map65a
|
||||
parameter (NSMAX=60*96000) !Samples per 60 s file
|
||||
integer*2 id(4,NSMAX) !46 MB: raw data from Linrad timf2
|
||||
common/datcom/nutc,newdat2,id
|
||||
common/spcom/ip0,ss(5,322,NFFT) !169 MB: half-symbol spectra
|
||||
common/spcom/ip0,ss(4,322,NFFT),ss5(322,NFFT)
|
||||
data blank/' '/
|
||||
data shmsg0/'ATT','RO ','RRR','73 '/
|
||||
data nfile/0/,nutc0/-999/,nid/0/
|
||||
@ -95,7 +95,7 @@ subroutine map65a
|
||||
short(3,i)=0.
|
||||
enddo
|
||||
|
||||
call symspec(id,nz,ss,savg)
|
||||
call symspec(id,nz,savg)
|
||||
newspec=1
|
||||
|
||||
freq0=-999.
|
||||
|
5
spec.f90
5
spec.f90
@ -15,7 +15,8 @@ subroutine spec(brightness,contrast,ngain,nspeed,a,a2)
|
||||
integer nstep(5)
|
||||
integer b0,c0
|
||||
real s(NFFT,NY)
|
||||
common/spcom/ip0,ss(5,322,NFFT) !169 MB: half-symbol spectra
|
||||
! Could save memory by doing the averaging-by-7 (or 10?) of ss5 in symspec.
|
||||
common/spcom/ip0,ss(4,322,NFFT),ss5(322,NFFT)
|
||||
include 'gcom1.f90'
|
||||
include 'gcom2.f90'
|
||||
include 'gcom3.f90'
|
||||
@ -43,7 +44,7 @@ subroutine spec(brightness,contrast,ngain,nspeed,a,a2)
|
||||
do n=1,nadd
|
||||
k=k+1
|
||||
do i=1,NFFT
|
||||
s(i,j)=s(i,j) + ss(5,k,i) !### ip value is temporary ###
|
||||
s(i,j)=s(i,j) + ss5(k,i)
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
|
37
symspec.f
37
symspec.f
@ -1,14 +1,14 @@
|
||||
subroutine symspec(id,nz,ss,savg)
|
||||
subroutine symspec(id,nz,savg)
|
||||
|
||||
C Compute spectra at four polarizations, using half-symbol steps.
|
||||
|
||||
parameter (NFFT=32768)
|
||||
integer*2 id(4,nz)
|
||||
real ss(5,322,NFFT)
|
||||
real savg(4,NFFT)
|
||||
complex cx(NFFT),cy(NFFT) ! pad to 32k with zeros
|
||||
complex z
|
||||
real*8 ts,hsym
|
||||
common/spcom/ip0,ss(4,322,NFFT),ss5(322,NFFT)
|
||||
|
||||
fac=1.e-4
|
||||
hsym=2048.d0*96000.d0/11025.d0 !Samples per half symbol
|
||||
@ -42,28 +42,29 @@ C Compute spectra at four polarizations, using half-symbol steps.
|
||||
call four2a(cx,NFFT,1,1,1) !Do the FFTs
|
||||
call four2a(cy,NFFT,1,1,1)
|
||||
|
||||
do i=1,NFFT !Save and accumulate power spectra
|
||||
s1=real(cx(i))**2 + aimag(cx(i))**2
|
||||
ss(1,n,i)=s1 ! Pol = 0
|
||||
savg(1,i)=savg(1,i) + s1
|
||||
do i=1,NFFT !Save and accumulate power spectra
|
||||
sx=real(cx(i))**2 + aimag(cx(i))**2
|
||||
ss(1,n,i)=sx ! Pol = 0
|
||||
savg(1,i)=savg(1,i) + sx
|
||||
|
||||
z=cx(i) + cy(i)
|
||||
s2=0.5*(real(z)**2 + aimag(z)**2)
|
||||
ss(2,n,i)=s2 ! Pol = 45
|
||||
savg(2,i)=savg(2,i) + s2
|
||||
s=0.5*(real(z)**2 + aimag(z)**2)
|
||||
ss(2,n,i)=s ! Pol = 45
|
||||
savg(2,i)=savg(2,i) + s
|
||||
|
||||
s3=real(cy(i))**2 + aimag(cy(i))**2
|
||||
ss(3,n,i)=s3 ! Pol = 90
|
||||
savg(3,i)=savg(3,i) + s3
|
||||
sy=real(cy(i))**2 + aimag(cy(i))**2
|
||||
ss(3,n,i)=sy ! Pol = 90
|
||||
savg(3,i)=savg(3,i) + sy
|
||||
|
||||
z=cx(i) - cy(i)
|
||||
s4=0.5*(real(z)**2 + aimag(z)**2)
|
||||
ss(4,n,i)=s4 ! Pol = 135
|
||||
savg(4,i)=savg(4,i) + s4
|
||||
s=0.5*(real(z)**2 + aimag(z)**2)
|
||||
ss(4,n,i)=s ! Pol = 135
|
||||
savg(4,i)=savg(4,i) + s
|
||||
|
||||
z=cx(i)*conjg(cy(i))
|
||||
ss5(n,i)=0.5*(sx+sy) + (real(z)**2 + aimag(z)**2 -
|
||||
+ sx*sy)/(sx+sy)
|
||||
|
||||
z=cx(i) * conjg(cy(i))
|
||||
ss(5,n,i)=0.5*(s1+s3) + (real(z)**2 + aimag(z)**2 -
|
||||
+ s1*s3)/(s1+s3)
|
||||
enddo
|
||||
enddo
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user