summaryrefslogtreecommitdiff
path: root/cad/simian
diff options
context:
space:
mode:
authordmcmahill <dmcmahill@pkgsrc.org>2001-04-28 02:36:35 +0000
committerdmcmahill <dmcmahill@pkgsrc.org>2001-04-28 02:36:35 +0000
commit0ccb07d3db0fdee1d5af97f8ef0d5a853a817a45 (patch)
treef5b87d1c26cd78cdabd5d657c32979a65a97d8db /cad/simian
parent8171a8184f0d270aa1d6448d40321e4458909c89 (diff)
downloadpkgsrc-0ccb07d3db0fdee1d5af97f8ef0d5a853a817a45.tar.gz
initial import of simian-2.1
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).
Diffstat (limited to 'cad/simian')
-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