'RND-FSD4.BAS I=0 J=0 K=0 NUMEVENTS=12 'Number of events for each run PERIOD=0 TWENTIETH=0 JD1900# = 2415021 'Julian Date for Jan 01, 1900 VJD#=0 'VIC Julian Date closest to onset event MON=0 'Month number in flu season density profile DENSITY=0 'Number of cases in flu season densitiy profile NUMRUNS=0 'Number of runs 'Data tables are at the end of the program dim VDay(65),VMon$(65),VYear(65),VJD#(65) dim o#(65), n(10,10), sjd(10,10), diff(10,10), rmdtot(1400) dim month$(12), numdaysmon(12), jdmon(13) dim monfludens(2000), pa(2000), month(12) 'screen print VIC format ' DD Mon YYYY DDDDDDD format$="## \ \ #### #######" ' DD Mon YYYY DDDDDDD DD Mon YYYY DDDDDDD Del Bin fmt$="## \ \ #### ####### ## \ \ #### ####### ### ##" cls Print "Venus Inferior Conjunctions versus Random Flu Start Dates" print input "How many events (0 to end) ";n if n=0 then end NUMEVENTS=n 30 input "Number of runs";n if n=0 then end 40 input "Filename (ex: Fludat.txt)";nam$ if nam$="" then end filenam$=nam$ 'Read in Month Names 'Table (A) for i=1 to 12 read month$(i) next i 'Read in numbers of days in months, make jd accumulations 'Table (B) jdmon(1)=0 for i=1 to 12 read numdaysmon(i) jdmon(i+1)=jdmon(i)+numdaysmon(i) 'print using "### ### ";i;jdmon(i) next i 'Read in monthly flu season density factors 'Table (C) for i=1 to 12 'MON=month number, DENSITY=number of cases read MON, DENSITY print using "### ### ";j;k; print note$ monfludens(MON)=DENSITY next i 'Read Venus Inferior Conjunction data 'Table (D) for i=1 to 65 read VDay(i),VMon$(i),VYear(i),VJD#(i) print using format$; VDay(i),VMon$(i),VYear(i),VJD#(i) next i print 'Populate probability array k=0 for i=1 to 12 'print using "### ### ";i;monfludens(i) for j=1 to monfludens(i) k=k+1 pa(k)=i next j next i range=k close open filenam$ for output as #1 print #1, " VIC dates JD Onset dates JD Delay Bin print #1, for i=1 to NUMRUNS print #1, using" ##";i 'generate random onset dates for specified number of events for YR=1 to NUMEVENTS rndyr=int(rnd(1)*100) year=1900+rndyr 'select random (flu season weighted) month n=int(rnd(1)*range) month=pa(n) month$=month$(month) 'Select random day of month '************************************************************ '***** This algorithm ignores leap year refinements! ******** '************************************************************ day=int(rnd(1)*numdaysmon(month)+1) JD#=JD1900#-1 + int(365.25*rndyr)+jdmon(month)+day for j=1 to 64 'just go to 64 'print using "## JD ####### VJD #######";j;JD#;VJD#(j) if JD#>VJD#(j) then 130 j=j-1 PERIOD=(VJD#(j+1)-VJD#(j)) TWENTIETH=PERIOD/20 del=JD#-VJD#(j):bin=int(del/TWENTIETH)+1 print #1, using fmt$;VDAY(j);VMon$(j);VYear(j);VJD#(j);day;month$;year;JD#;del;bin j=64 130 next j 140 'z$=inkey$:if z$="" then 140 'if z$=chr$(27) then end next YR print #1, print #1, next i close #1 Print print "The data file just created is named ";filenam$ 'end of program 'Table (A) 'Month Names data Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec 'Table (B) 'Numbers of days in months data 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 'Table (C) 'monthly infection rates data data 07, 2 data 08, 3 data 09, 5 data 10, 10 data 11, 17 data 12, 35 data 01, 90 data 02,170 data 03,100 data 04, 35 data 05, 8 data 06, 4 'Table (D) 'Venus Inferior Conjunction data for 20th century data 1,Dec,1898,2414625 data 8,Jul,1900,2415209 data 14,Feb,1902,2415795 data 17,Sep,1903,2416375 data 27,Apr,1905,2416963 data 30,Nov,1906,2417545 data 6,Jul,1908,2418129 data 12,Feb,1910,2418705 data 15,Sep,1911,2419295 data 25,Apr,1913,2419883 data 27,Nov,1914,2420464 data 3,Jul,1916,2421048 data 10,Feb,1918,2421635 data 13,Sep,1919,2422215 data 22,Apr,1921,2422802 data 25,Nov,1922,2423384 data 1,Jul,1924,2423968 data 7,Feb,1926,2424554 data 10,Sep,1927,2425134 data 20,Apr,1929,2425722 data 22,Nov,1930,2426303 data 29,Jun,1932,2426888 data 5,Feb,1934,2427474 data 8,Sep,1935,2428054 data 18,Apr,1937,2428642 data 20,Nov,1938,2429223 data 26,Jun,1940,2429807 data 2,Feb,1942,2430393 data 6,Sep,1943,2430974 data 15,Apr,1945,2431561 data 17,Nov,1946,2432142 data 24,Jun,1948,2432727 data 31,Jan,1950,2433313 data 3,Sep,1951,2433893 data 13,Apr,1953,2434481 data 15,Nov,1954,2435062 data 22,Jun,1956,2435647 data 28,Jan,1958,2436232 data 1,Sep,1959,2436813 data 10,Apr,1961,2437400 data 12,Nov,1962,2437981 data 19,Jun,1964,2438566 data 26,Jan,1966,2439152 data 29,Aug,1967,2439732 data 8,Apr,1969,2440320 data 10,Nov,1970,2440901 data 17,Jun,1972,2441486 data 23,Jan,1974,2442071 data 27,Aug,1975,2442652 data 6,Apr,1977,2443240 data 7,Nov,1978,2443820 data 15,Jun,1980,2444406 data 21,Jan,1982,2444991 data 25,Aug,1983,2445572 data 3,Apr,1985,2446159 data 5,Nov,1986,2446740 data 13,Jun,1988,2447326 data 18,Jan,1990,2447910 data 22,Aug,1991,2448491 data 1,Apr,1993,2449079 data 2,Nov,1994,2449659 data 10,Jun,1996,2450245 data 16,Jan,1998,2450830 data 20,Aug,1999,2451411 data 30,Mar,2001,2451999