pkgsrc/cad/simian/patches/patch-ab
dmcmahill 0ccb07d3db 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).
2001-04-28 02:36:35 +00:00

64 lines
2.2 KiB
Text

$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);
}