0ccb07d3db
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).
64 lines
2.2 KiB
Text
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);
|
|
}
|