summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cad/simian/Makefile34
-rw-r--r--cad/simian/distinfo8
-rw-r--r--cad/simian/patches/patch-aa34
-rw-r--r--cad/simian/patches/patch-ab64
-rw-r--r--cad/simian/patches/patch-ac16
-rw-r--r--cad/simian/patches/patch-ad38
-rw-r--r--cad/simian/pkg/DESCR9
-rw-r--r--cad/simian/pkg/PLIST15
8 files changed, 218 insertions, 0 deletions
diff --git a/cad/simian/Makefile b/cad/simian/Makefile
new file mode 100644
index 00000000000..44e24cdc790
--- /dev/null
+++ b/cad/simian/Makefile
@@ -0,0 +1,34 @@
+# $NetBSD: Makefile,v 1.1.1.1 2001/04/28 02:36:35 dmcmahill Exp $
+#
+
+DISTNAME= simian_12_98
+PKGNAME= simian-2.1
+CATEGORIES= cad
+MASTER_SITES= http://weewave.mer.utexas.edu/MED_files/CODE_RQST/
+
+MAINTAINER= dmcmahill@netbsd.org
+HOMEPAGE= http://weewave.mer.utexas.edu/MED_files/MED_research/Intrcncts/SIMIAN_stuff/simian_links.html
+COMMENT= 2-dimensional interconnect and transmission line simulator
+
+RESTRICTED= "Personal use only"
+NO_SRC_ON_CDROM= ${RESTRICTED}
+NO_BIN_ON_CDROM= ${RESTRICTED}
+NO_SRC_ON_FTP= ${RESTRICTED}
+NO_BIN_ON_FTP= ${RESTRICTED}
+
+WRKSRC= ${WRKDIR}/Simian/src
+ALL_TARGET= simian
+
+do-fetch:
+ @if ${TEST} \! -f ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}; then \
+ ${ECHO} "===> You need to request a password on ${HOMEPAGE}"; \
+ ${ECHO} " and fetch on your own source file."; \
+ exit 1; \
+ fi
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/simian ${PREFIX}/bin
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/simian
+ ${INSTALL_DATA} ${WRKSRC}/../examples/* ${PREFIX}/share/examples/simian
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/cad/simian/distinfo b/cad/simian/distinfo
new file mode 100644
index 00000000000..64839c44709
--- /dev/null
+++ b/cad/simian/distinfo
@@ -0,0 +1,8 @@
+$NetBSD: distinfo,v 1.1.1.1 2001/04/28 02:36:35 dmcmahill Exp $
+
+SHA1 (simian_12_98.tar.gz) = c7d57087a397970b05195f497c98a058cea1a93a
+Size (simian_12_98.tar.gz) = 18474 bytes
+SHA1 (patch-aa) = fa43e88db6902537114d49ff0f14d420927c50e1
+SHA1 (patch-ab) = e31c96d7fa79833dbd9dc7d22ea1f0a95b327d4a
+SHA1 (patch-ac) = 64b974adb3111e21bd6f14838371eb5db5cbd050
+SHA1 (patch-ad) = d3f6b068fe0d16a8c097b7e5a77d7f89d010e8b8
diff --git a/cad/simian/patches/patch-aa b/cad/simian/patches/patch-aa
new file mode 100644
index 00000000000..8eff5c7ce5f
--- /dev/null
+++ b/cad/simian/patches/patch-aa
@@ -0,0 +1,34 @@
+$NetBSD: patch-aa,v 1.1.1.1 2001/04/28 02:36:35 dmcmahill Exp $
+
+--- Makefile.orig Mon Dec 7 03:28:52 1998
++++ Makefile Fri Apr 27 17:09:20 2001
+@@ -1,6 +1,4 @@
+
+-SHELL = /bin/csh
+-CCC = c++
+-CCFLAGS = -g
++CXXFLAGS+= -Wformat
+ LDFLAGS = -lm
+ RM = /bin/rm
+@@ -14,5 +12,5 @@
+
+ simian : $(OBJEC)
+- $(CCC) $(CCFLAGS) $(TARGET_ARCH) $(OBJEC) -o simian $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(TARGET_ARCH) $(OBJEC) -o simian $(LDFLAGS)
+
+ main.o : main.cc weeks.h
+@@ -48,11 +46,11 @@
+
+ $(INCLU)/linear.o : $(INCLU)/linear.cc
+- g++ -c $(CFLAGS) $(INCLU)/linear.cc -o $(INCLU)/linear.o
++ $(CXX) -c $(CXXFLAGS) $(INCLU)/linear.cc -o $(INCLU)/linear.o
+
+ $(INCLU)/bessel.o : $(INCLU)/bessel.cc
+- g++ -c $(CFLAGS) $(INCLU)/bessel.cc -o $(INCLU)/bessel.o
++ $(CXX) -c $(CXXFLAGS) $(INCLU)/bessel.cc -o $(INCLU)/bessel.o
+
+ clean:
+- $(RM) -f *.o
++ $(RM) -f *.o simian
+ cd ../include; $(RM) -f *.o
+
diff --git a/cad/simian/patches/patch-ab b/cad/simian/patches/patch-ab
new file mode 100644
index 00000000000..b41b651f21c
--- /dev/null
+++ b/cad/simian/patches/patch-ab
@@ -0,0 +1,64 @@
+$NetBSD: patch-ab,v 1.1.1.1 2001/04/28 02:36:35 dmcmahill Exp $
+
+--- main.cc.orig Thu Dec 10 05:56:19 1998
++++ main.cc Fri Apr 27 16:47:38 2001
+@@ -74,5 +74,5 @@
+ LastFil(fils); //remove last empty entry.
+ // Corr(fils); /* x1 < x2 */
+- printf("Total %ld ribbons, %ld conductor\n",Nf,Nc);
++ printf("Total %d ribbons, %d conductor\n",Nf,Nc);
+ L=allocator(Nf);
+
+@@ -85,5 +85,5 @@
+ L[j][i]=L[i][j]=Lp(iF,jF);
+ jF=jF->next;
+- fprintf(fo,"%ld %ld %le\n",i,j,L[i][j]*sis->unit);
++ fprintf(fo,"%d %d %e\n",i,j,L[i][j]*sis->unit);
+ }
+ iF=iF->next;
+@@ -97,5 +97,5 @@
+ for (i=0;i<Nf;i++) {
+ for (j=i;j<Nf;j++) {
+- fscanf(fi,"%ld %ld %le\n",&k,&k,&L[i][j]);
++ fscanf(fi,"%d %d %le\n",&k,&k,&L[i][j]);
+ L[i][j]/=sis->unit;
+ L[j][i]=L[i][j];
+@@ -115,5 +115,5 @@
+ printf("\n");
+ printf("*********** \n");
+- printf("Total Elapsed time=%ld Seconds\n",(stop-start));
++ printf("Total Elapsed time=%ld Seconds\n",(long int) (stop-start));
+ exit(1);
+ }
+@@ -144,9 +144,9 @@
+ z=matrix(Nc,Nc);
+ z=inverse(ymtrx,Nc);
+- fprintf(fzs,"\nImpedance %ld x %ld matrix (R,L) at f=%10.4le Hz\n",
++ fprintf(fzs,"\nImpedance %d x %d matrix (R,L) at f=%10.4e Hz\n",
+ Nc,Nc,w/2/M_PI);
+ for (i=0;i<Nc;i++) {
+ for (j=0;j<Nc;j++) {
+- fprintf(fzs,"(%11.4le,%11.4le) ",RE(z[i][j])*sis->unit,IM(z[i][j])
++ fprintf(fzs,"(%11.4e,%11.4e) ",RE(z[i][j])*sis->unit,IM(z[i][j])
+ /w*sis->unit);
+ }
+@@ -182,10 +182,10 @@
+ Din=matrix(numsgn+1,numsgn+1);
+ Din=Zequ(cons,numsgn,Nc);
+- fprintf(fzs,"\nImpedance %ld x %ld matrix (R,L) at f=%10.4le Hz\n",
++ fprintf(fzs,"\nImpedance %d x %d matrix (R,L) at f=%10.4e Hz\n",
+ numsgn,numsgn,w/2/M_PI);
+
+ for (i=0;i<numsgn;i++) {
+ for (j=0;j<numsgn;j++) {
+- fprintf(fzs,"(%11.4le,%11.4le) ",RE(Din[i][j])*sis->unit,IM(Din[i][j])
++ fprintf(fzs,"(%11.4e,%11.4e) ",RE(Din[i][j])*sis->unit,IM(Din[i][j])
+ /w*sis->unit);
+ }
+@@ -200,5 +200,5 @@
+ printf("\n");
+ printf("*********** \n");
+- printf("Total Elapsed time=%ld Seconds\n",(stop-start));
++ printf("Total Elapsed time=%ld Seconds\n",(long int) (stop-start));
+ exit(0);
+ }
diff --git a/cad/simian/patches/patch-ac b/cad/simian/patches/patch-ac
new file mode 100644
index 00000000000..749fd6161f0
--- /dev/null
+++ b/cad/simian/patches/patch-ac
@@ -0,0 +1,16 @@
+$NetBSD: patch-ac,v 1.1.1.1 2001/04/28 02:36:35 dmcmahill Exp $
+
+--- plane.cc.orig Mon Dec 7 03:28:51 1998
++++ plane.cc Fri Apr 27 16:48:43 2001
+@@ -335,9 +335,9 @@
+ for (j=1;j<=l[i];j++) {
+ if (l[i]!=2)
+- if (LX[i][j]!=LX[i][j+1]) fprintf(fo,"below %ld %le\n",i,LX[i][j]);
++ if (LX[i][j]!=LX[i][j+1]) fprintf(fo,"below %d %e\n",i,LX[i][j]);
+ }
+ for (j=1;j<=u[i];j++) {
+ if (u[i]!=2)
+- if (UX[i][j]!=UX[i][j+1]) fprintf(fo,"above %ld %le\n",i,UX[i][j]);
++ if (UX[i][j]!=UX[i][j+1]) fprintf(fo,"above %d %e\n",i,UX[i][j]);
+ }
+ }
diff --git a/cad/simian/patches/patch-ad b/cad/simian/patches/patch-ad
new file mode 100644
index 00000000000..c8ab727282c
--- /dev/null
+++ b/cad/simian/patches/patch-ad
@@ -0,0 +1,38 @@
+$NetBSD: patch-ad,v 1.1.1.1 2001/04/28 02:36:35 dmcmahill Exp $
+
+--- reader.cc.orig Thu Dec 10 04:02:44 1998
++++ reader.cc Fri Apr 27 17:00:23 2001
+@@ -213,5 +213,5 @@
+ fl >> s1;
+ if (strcmp(s1,"=")==0) fl >> conduc->dx;
+- else sscanf(s1,"%c%ld",&dum,&conduc->dx);
++ else sscanf(s1,"%c%d",&dum,&conduc->dx);
+ }
+ else if (strcmp(s1,"ny=")==0) fl >> conduc->dy;
+@@ -219,5 +219,5 @@
+ fl >> s1;
+ if (strcmp(s1,"=")==0) fl >> conduc->dy;
+- else sscanf(s1,"%c%ld",&dum,&conduc->dy);
++ else sscanf(s1,"%c%d",&dum,&conduc->dy);
+ }
+ else if (strcmp(s1,"nr=")==0) fl >> conduc->nr;
+@@ -225,5 +225,5 @@
+ fl >> s1;
+ if (strcmp(s1,"=")==0) fl >> conduc->nr;
+- else sscanf(s1,"%c%ld",&dum,&conduc->nr);
++ else sscanf(s1,"%c%d",&dum,&conduc->nr);
+ }
+ else if ((strncmp(s1,"*",1)==0)||(strncmp(s1,".",1)==0)) {
+@@ -266,9 +266,9 @@
+ sscanf(s1,"%c%c%le",&dum,&dum,&conduc->v);
+ else if (strncmp(s1,"nx=",3)==0)
+- sscanf(s1,"%c%c%c%ld",&dum,&dum,&dum,&conduc->dx);
++ sscanf(s1,"%c%c%c%d",&dum,&dum,&dum,&conduc->dx);
+ else if (strncmp(s1,"ny=",3)==0)
+- sscanf(s1,"%c%c%c%ld",&dum,&dum,&dum,&conduc->dy);
++ sscanf(s1,"%c%c%c%d",&dum,&dum,&dum,&conduc->dy);
+ else if (strncmp(s1,"nr=",3)==0)
+- sscanf(s1,"%c%c%c%ld",&dum,&dum,&dum,&conduc->nr);
++ sscanf(s1,"%c%c%c%d",&dum,&dum,&dum,&conduc->nr);
+ else if (strncmp(s1,"rx=",3)==0)
+ sscanf(s1,"%c%c%c%le",&dum,&dum,&dum,&conduc->rx);
diff --git a/cad/simian/pkg/DESCR b/cad/simian/pkg/DESCR
new file mode 100644
index 00000000000..c0bc18aa3ef
--- /dev/null
+++ b/cad/simian/pkg/DESCR
@@ -0,0 +1,9 @@
+Surface Impedance Method for Interconnect Analysis.
+
+SIMIAN is a two dimensional frequency dependent series
+impedance extraction tool for inerconnects and transmission
+lines using conductors of rectangular or circular cross section.
+
+The use of the surface ribbon method (SRM) greatly enhances
+the speed of computation relative to the volume filament
+method (VFM).
diff --git a/cad/simian/pkg/PLIST b/cad/simian/pkg/PLIST
new file mode 100644
index 00000000000..95afafca188
--- /dev/null
+++ b/cad/simian/pkg/PLIST
@@ -0,0 +1,15 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2001/04/28 02:36:35 dmcmahill Exp $
+bin/simian
+share/examples/simian/ex1
+share/examples/simian/ex10
+share/examples/simian/ex11
+share/examples/simian/ex12
+share/examples/simian/ex2
+share/examples/simian/ex3
+share/examples/simian/ex4
+share/examples/simian/ex5
+share/examples/simian/ex6
+share/examples/simian/ex7
+share/examples/simian/ex8
+share/examples/simian/ex9
+@dirrm share/examples/simian