SUBROUTINE BINVIS C Calculate the visibility of a binary made up of two uniform disks, C with one source at the phase center. C Version 1.0 27 Dec 1990 J.T. Armstrong C This program calls BWVIS to calculate the complex visibility of C each component. INCLUDE 'BINFIT.INC' C VISIBILITIES: COMPLEX*16 VIS, VISTOT(MXREC,MXFILT) C Convert angles (position angle, separation, diameter) to radians. D WRITE(OUTC,*) ' Convert angular quantities to radians' DO IC = 1, NCOMP DO IG = 1, NFILT SEPRAD (IC,IG) = PARM(IC,IG,1)*MAS2RAD PARAD (IC,IG) = PARM(IC,IG,2)*DEGRAD DIAMRAD(IC,IG) = PARM(IC,IG,3)*MAS2RAD D WRITE(OUTC,'(A,3F10.5)') D 1 ' Sep, PA, D (mas, deg, mas): ', D 2 PARM(IC,IG,1),PARM(IC,IG,2),PARM(IC,IG,3) D WRITE(OUTC,'(A,3(1X,G10.5))') D 1 ' Sep, PA, D (rad): ', D 2 SEPRAD(IC,IG),PARAD(IC,IG),DIAMRAD(IC,IG) END DO END DO C Calculate predicted visibilities for each baseline and data record: DO ID = 1, NDATA DO IG = 1, NFILT VISTOT(ID,IG) = CMPLX(0.0,0.0) IF (OBSVIS2(ID,IG) .NE. 2.0) THEN DO IC = 1, NCOMP CALL BWVIS(IC,ID,IG,VIS) VISTOT(ID,IG) = VISTOT(ID,IG) + FLUX(IC,IG)*VIS END DO END IF VIS2(ID,IG) = DBLE(VISTOT(ID,IG))**2 1 + DIMAG(VISTOT(ID,IG))**2 D WRITE(OUTC,'(A,I2,A,I2,A,F7.3)') D 1 ' VIS2(',ID,',',IG,') =',VIS2(ID,IG) C VISPHA(ID,IG) = DATAN2( DIMAG(VISTOT(ID,IG)), C 1 DBLE(VISTOT(ID,IG)) ) END DO END DO C To calculate closure phases, borrow code from BMODAP and insert here. RETURN END