00001 00002 c 00003 c Copyright (c) 1986,1987,1988,1989,1990,1991,1992,1993, 00004 c by Steve McMillan, Drexel University, Philadelphia, PA. 00005 c 00006 c All rights reserved. 00007 c 00008 c Redistribution and use in source and binary forms are permitted 00009 c provided that the above copyright notice and this paragraph are 00010 c duplicated in all such forms and that any documentation, 00011 c advertising materials, and other materials related to such 00012 c distribution and use acknowledge that the software was developed 00013 c by the author named above. 00014 c 00015 c THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR 00016 c IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 00017 c WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00018 c 00019 subroutine contor(a,m,n,v,iv,xmin,xmax,ymin,ymax) 00020 save 00021 c 00022 c Easy-to-use contour plotter. 00023 c 00024 dimension a(m,n),v(iv) 00025 dimension x(2000),y(2000) 00026 external plot 00027 c 00028 if(m.le.1.or.n.le.1)return 00029 c 00030 do 100 i=1,m 00031 100 x(i)=xmin+(i-1.)*(xmax-xmin)/(m-1.) 00032 do 200 j=1,n 00033 200 y(j)=ymin+(j-1.)*(ymax-ymin)/(n-1.) 00034 c 00035 c Split large images into strips... 00036 c 00037 npass=(m*n)/65536+1 00038 nstep=max(3,n/npass) 00039 c 00040 do 500 j=1,n,nstep-1 00041 500 call convec(a(1,j),x,y(j),m,min(nstep,n-j+1),v,iv,plot) 00042 c 00043 end 00044 00045 00046 subroutine dcontor(a,m,n,v,iv,xmin,xmax,ymin,ymax) 00047 save 00048 c 00049 c Same as contor, but uses dplot. 00050 c 00051 dimension a(m,n),v(iv) 00052 dimension x(2000),y(2000) 00053 external plot,dplot 00054 c 00055 if(m.le.1.or.n.le.1)return 00056 c 00057 do 100 i=1,m 00058 100 x(i)=xmin+(i-1.)*(xmax-xmin)/(m-1.) 00059 do 200 j=1,n 00060 200 y(j)=ymin+(j-1.)*(ymax-ymin)/(n-1.) 00061 c 00062 c Split large images into strips... 00063 c 00064 npass=(m*n)/65536+1 00065 nstep=max(3,n/npass) 00066 c 00067 do 500 j=1,n,nstep-1 00068 500 call convec(a(1,j),x,y(j),m,min(nstep,n-j+1),v,iv,dplot) 00069 c 00070 end