1014 lines
28 KiB
Plaintext
1014 lines
28 KiB
Plaintext
From: Digestifier <Linux-Misc-Request@senator-bedfellow.mit.edu>
|
|
To: Linux-Misc@senator-bedfellow.mit.edu
|
|
Reply-To: Linux-Misc@senator-bedfellow.mit.edu
|
|
Date: Sun, 2 Oct 94 00:13:15 EDT
|
|
Subject: Linux-Misc Digest #863
|
|
|
|
Linux-Misc Digest #863, Volume #2 Sun, 2 Oct 94 00:13:15 EDT
|
|
|
|
Contents:
|
|
Re: unctrl.h: No such file or directory (Matthew Hannigan)
|
|
Re: [Q] Anyone working on aOpenGL port ? (Matthew Hannigan)
|
|
Re: Split this group! (.help) (Mr D R Barlow)
|
|
Re: Linux, 40,000 Cover CD's (Stuart Booth)
|
|
dstool binary anyone ? (Vince Taluskie)
|
|
Re: Where did you buy Motif? (Brian Weaver)
|
|
Re: QNX, Linux, or 386BSD? (Jason Fordham)
|
|
Re: Yggdrasil Linux Plug and Play CD ver1.1 ? (Robert Willett)
|
|
Dynamic IP PPP server (Richard Farrar)
|
|
Re: unctrl.h: No such file or directory (Zeyd M. Ben-Halim)
|
|
Re: P5-90 MHz beats SGI R4000-100MHz. (Valery Petrov)
|
|
X Font Creation? (Benedict J Raia)
|
|
SEMINAR: LINUX - A UNIX Clone. 10/5. By ILA (Charles Liu)
|
|
Re: SCO WordPerfect: does it run on Linux? (Robert Bruce Prior)
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
From: matth@extro.ucc.su.OZ.AU (Matthew Hannigan)
|
|
Subject: Re: unctrl.h: No such file or directory
|
|
Date: Sat, 1 Oct 1994 17:11:07 GMT
|
|
|
|
zmbenhal@netcom.com (Zeyd M. Ben-Halim) writes:
|
|
|
|
>Programmers should not use <ncurses/ncurses.h>. stick to <ncurses.h>
|
|
>and use -I/usr/include/ncurses to direct the compiler to the correct
|
|
>directory.
|
|
|
|
But if you do this, then isn't it possible that
|
|
you might include other stuff in /usr/include/ncurses/
|
|
that you might not want?
|
|
|
|
e.g. you might #include <termcap.h>, and get the one in
|
|
the ncurses directory rather than the one in /usr/include/.
|
|
(They're different on my system, I don't know how much
|
|
that matters)
|
|
|
|
I just have a feeling that it is safer to #include <pkg/somefile.h>
|
|
in general rather than -I/usr/include/<pkg> , #include <somefile.h>
|
|
|
|
--
|
|
-Matt Hannigan
|
|
|
|
|
|
------------------------------
|
|
|
|
From: matth@extro.ucc.su.OZ.AU (Matthew Hannigan)
|
|
Subject: Re: [Q] Anyone working on aOpenGL port ?
|
|
Date: Sat, 1 Oct 1994 17:21:20 GMT
|
|
|
|
hm@ix.de (Harald Milz) writes:
|
|
|
|
>Subject sez all: Is anyone working on an OpenGL port for Linux? I mean
|
|
>the 3D part, not the 2D implementation.
|
|
|
|
You might want to join the freegl mailing list;
|
|
try mailing to:
|
|
freegl-request@gnu.ai.mit.edu
|
|
|
|
Regards,
|
|
-Matt
|
|
|
|
------------------------------
|
|
|
|
From: xuuah@csv.warwick.ac.uk (Mr D R Barlow)
|
|
Crossposted-To: comp.os.linux.help
|
|
Subject: Re: Split this group! (.help)
|
|
Date: 1 Oct 1994 18:59:59 +0100
|
|
|
|
In article <36j3df$319@crl5.crl.com>,
|
|
itz@crl.com (Ian T. Zimmerman) writes:
|
|
>
|
|
>Folks, this newsgroup can net ~400 messages a day! That's just TOO
|
|
>f#!@$#ing MANY! I vote will all my extremities to split.
|
|
|
|
Into what? Maybe we could split into
|
|
comp.os.linux.help.havereadthefaq
|
|
comp.os.linux.help.lazy
|
|
comp.os.linux.help.hey-isnt-doom-great
|
|
|
|
Problem is (can I remove a file called kcore in my 'proc' directory?)
|
|
the second would be declared bogus does to lack of traffic.
|
|
|
|
Seriously. What do you suggest?
|
|
|
|
Daniel
|
|
[followups to .misc, as this isn't really a help issue]
|
|
|
|
|
|
------------------------------
|
|
|
|
From: stuart@garage.demon.co.uk (Stuart Booth)
|
|
Subject: Re: Linux, 40,000 Cover CD's
|
|
Reply-To: stuart@garage.demon.co.uk
|
|
Date: Tue, 20 Sep 1994 12:32:37 +0000
|
|
|
|
In article <CwDK7p.8y7@compsci.liverpool.ac.uk>
|
|
m3apc@csc.liv.ac.uk "A.P. Crossan" writes:
|
|
>
|
|
> > When is it supposed to be on the shelves? And what issue should I
|
|
> > ask for?
|
|
>
|
|
> I mailed lasermoon this question, but I'm still waiting a reply.
|
|
>
|
|
> The latest edition of PC-PLUS states that they are changing the publication
|
|
> date. The November copy will not appear until 1st of that month -- quite a
|
|
> wait :-(
|
|
|
|
That PC-PLUS edition...
|
|
|
|
It's on the shelves in the UK *NOW* - I have a copy of the CD-ROM on my desk,
|
|
and the mag's at home!
|
|
|
|
Wahey!
|
|
|
|
--
|
|
Stuart Booth
|
|
stuart@garage.demon.co.uk
|
|
|
|
------------------------------
|
|
|
|
From: taluskie@utpapa.ph.utexas.edu (Vince Taluskie)
|
|
Subject: dstool binary anyone ?
|
|
Date: 30 Sep 1994 21:09:26 GMT
|
|
|
|
Anyone have an installation of dstool properly compiled and configured
|
|
that they can make available. I remember that I got one ages ago that
|
|
was well setup until a professor removed it to make space for other
|
|
programs...
|
|
|
|
Vince
|
|
--
|
|
Vince Taluskie
|
|
UT Physics Computer Group taluskie@utpapa.ph.utexas.edu
|
|
UNIX Systems Administration http://www.ph.utexas.edu/~taluskie/home.html
|
|
|
|
"It's easier to be a result of the past than a cause of the future"
|
|
|
|
------------------------------
|
|
|
|
From: weaver@vagus.vth.colostate.edu (Brian Weaver)
|
|
Subject: Re: Where did you buy Motif?
|
|
Date: 1 Oct 1994 18:18:16 GMT
|
|
|
|
Bought it from sales@metrolink.com
|
|
|
|
|
|
Michael P. Jarreau (jarreau@vuse.vanderbilt.edu) wrote:
|
|
: I need to buy Motif and I need recommendations on distributors.
|
|
|
|
: Any thoughts?
|
|
|
|
: Thanks,
|
|
: Michael
|
|
: jarreau@vuse.vanderbilt.edu
|
|
|
|
|
|
--
|
|
===========================================================
|
|
Brian Weaver wk. 303-491-0352
|
|
Systems Administrator fax. 303-491-1245
|
|
Veterinary Teaching Hospital
|
|
Colorado State University weaver@vagus.vth.colostate.edu
|
|
===========================================================
|
|
|
|
------------------------------
|
|
|
|
From: jclf@kaiwan.com (Jason Fordham)
|
|
Crossposted-To: comp.os.qnx,comp.os.386bsd.misc
|
|
Subject: Re: QNX, Linux, or 386BSD?
|
|
Date: 1 Oct 1994 11:39:13 -0700
|
|
|
|
In article <Cwt0rH.E4A@news.cern.ch>, Dan Pop <danpop@cernapo.cern.ch> wrote:
|
|
>You forgot to tell us what you mean by "the best unix operating system".
|
|
>Or specify a method of comparing two OS's. So, your question is
|
|
>meaningless.
|
|
|
|
Ahhh... a Wittgenstien rebuttal, I think...
|
|
|
|
|
|
|
|
------------------------------
|
|
|
|
From: rob@finale.demon.co.uk (Robert Willett)
|
|
Subject: Re: Yggdrasil Linux Plug and Play CD ver1.1 ?
|
|
Reply-To: rob@finale.demon.co.uk
|
|
Date: Sat, 1 Oct 1994 18:40:52 +0000
|
|
|
|
In article <jeffpkCwnMJx.7MC@netcom.com>
|
|
jeffpk@netcom.com "Jeff Kesselman" writes:
|
|
> > [Stuff Deleted]
|
|
> > it can't seem to install packages from the
|
|
> >control panel in X-Windows like it says it can. I don't know why this is; I
|
|
> >just never had any luck making it work.
|
|
|
|
I had problems with that, I ended up deleting the links back to the CD-ROM
|
|
from the directory and it's worked eversince.
|
|
--
|
|
Robert Willett
|
|
============================================================
|
|
"Life is too short to spend on the Internet"
|
|
|
|
------------------------------
|
|
|
|
From: raf@dt1.datatamers.com (Richard Farrar)
|
|
Subject: Dynamic IP PPP server
|
|
Date: 1 Oct 1994 18:23:28 GMT
|
|
|
|
I am looking for information on how to set up my linux box as a
|
|
dynamic IP ppp server for dial in. Currently I am set up for dump terminal
|
|
dial in. PPP is complied in my kernel 1.1.51 and is running. I would like
|
|
to offer PPP dial in for Mosaic users. I've RTFM net-2-howto and the readme from
|
|
ppp-2-1-2a and all they talk about is how to dial into a DYN ppp server,
|
|
but not how to configure your box to be a dynamic IP PPP DIAL IN SERVER.
|
|
|
|
Can Any One Provide Some Help, Thanks
|
|
|
|
raf@datatamers.com
|
|
|
|
------------------------------
|
|
|
|
From: zmbenhal@netcom.com (Zeyd M. Ben-Halim)
|
|
Subject: Re: unctrl.h: No such file or directory
|
|
Date: Fri, 30 Sep 1994 02:33:54 GMT
|
|
|
|
In article <36d9m9$7dd@lynx.dac.neu.edu>,
|
|
zachary brown <zbrown@lynx.dac.neu.edu> wrote:
|
|
>Hi. Has anyone seen this? I #include <ncurses/ncurses.h> and compile
|
|
>with -lncurses, but I get an error saying it can't find unctrl.h.
|
|
>
|
|
>If I make a link from /usr/include/ncurses/unctrl.h into /usr/include,
|
|
>everything works fine.
|
|
>
|
|
>I use a recent Slackware on a 386 with kernel 1.1.18.
|
|
|
|
Programmers should not use <ncurses/ncurses.h>. stick to <ncurses.h>
|
|
and use -I/usr/include/ncurses to direct the compiler to the correct
|
|
directory.
|
|
|
|
Zeyd
|
|
|
|
|
|
--
|
|
---
|
|
Zeyd M. Ben-Halim zmbenhal@netcom.com
|
|
NCURSES is available from ftp.netcom.com:pub/zmbenhal/ncurses
|
|
Current version is 1.8.5
|
|
|
|
------------------------------
|
|
|
|
Subject: Re: P5-90 MHz beats SGI R4000-100MHz.
|
|
From: lera@zeus.chem.wvu.edu (Valery Petrov)
|
|
Date: Thu, 29 Sep 1994 16:18:40 GMT
|
|
|
|
In article <35v63m$3u4o@yuma.ACNS.ColoState.EDU>, pyeatt@cervesa.cs.colostate.edu (Larry Pyeatt) writes:
|
|
|> In article <CwJE4z.MGs@cerc.wvu.edu>, lera@zeus.chem.wvu.edu (Valery Petrov) writes:
|
|
|> |> Some benchmarks comparison:
|
|
|> |>
|
|
|> |> DELL XPS-90 SGI with R4000 cpu (100MHz):
|
|
|> |> Integer: 19.2 sec. 23.3 sec.
|
|
|> |> Floating point: 200 sec. 199 sec.
|
|
|> |>
|
|
|> |> I used gcc-2.5.8 with Linux-1.1.51 on DELL's Pentium and C 3.18 with
|
|
|> |> Irix 5.2 on Silicon Graphics machine. Programs were written in plain
|
|
|> |> C using double precision for floating point. Considering
|
|
|> |> the price difference (similarly equipped SGI is ~3 times more expensive)
|
|
|> |> I wonder who whould like to buy those Indigos nowdays.
|
|
|> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|> No one. The SGI you are describing is outdated and not sold anymore.
|
|
|
|
I saw it in the recent SG flyer for ~$12,000. Add to this the price
|
|
of software and you get triple.
|
|
|
|
|> Funny how a top of the line PC is being compared to something that
|
|
|> is too slow to be a workstation anymore.
|
|
|>
|
|
|> 1. the MIPS R4000 is hardly the fastest processor made by MIPS. The
|
|
|> Indego line is several years old whereas Pentium 90 is new. If you
|
|
|> want to compare apples to apples, use a new Indy with a MIPS R4600
|
|
|> processor at 166 Mhz. It blows the doors off Pentium 90. Would you
|
|
|> like to send your code to me so I can run it on a new SGI machine?
|
|
|
|
This is the code to I've used to test floating point performance. I would
|
|
appreciate if you post your results for R4600.
|
|
On R4000 it gives:
|
|
timex:
|
|
real 3:37.38
|
|
user 3:13.71
|
|
sys 10.37
|
|
|
|
!!! Use user+sys = 203 sec as a run time.
|
|
|
|
SGI -R4000 hinv:
|
|
1 100 MHZ IP20 Processor
|
|
FPU: MIPS R4010 Floating Point Chip Revision: 0.0
|
|
CPU: MIPS R4000 Processor Chip Revision: 2.2
|
|
On-board serial ports: 2
|
|
On-board bi-directional parallel port
|
|
Data cache size: 8 Kbytes
|
|
Instruction cache size: 8 Kbytes
|
|
Secondary unified instruction/data cache size: 1 Mbyte
|
|
Main memory size: 32 Mbytes
|
|
Integral Ethernet: ec0, version 1
|
|
CDROM: unit 4 on SCSI controller 0
|
|
Disk drive: unit 1 on SCSI controller 0
|
|
Integral SCSI controller 0: Version WD33C93B, revision C
|
|
Iris Audio Processor: revision 10
|
|
Graphics board: GR2-XZ
|
|
Galileo video: unit 0, revision 2
|
|
|
|
On DELL XPS-90 (256K cache 16M RAM) compiled with pentium NONoptimized gcc2.5.8
|
|
program runs 224 sec. ( A bit different then I had before but still it makes a point)
|
|
|
|
Integer point on DELL is 20% faster!
|
|
|
|
**************************************************************************
|
|
|
|
/*I assume no responsibilty if you kill yourself trying to make this program
|
|
run faster or trying to figure out how it works.
|
|
You MAY NOT use it for any purposes other then benchmarking */
|
|
|
|
/* Propagation of the flame front with diffusion induced instabilities */
|
|
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
#include <stdarg.h>
|
|
#include <math.h>
|
|
#define mx 400
|
|
#define my 81
|
|
double h[mx][my], h1[mx][my], f[mx][my], f1[mx][my];
|
|
double f2[mx][my], h2[mx][my], f3[mx][my], h3[mx][my];
|
|
double A[mx][my], B[mx][my], W[mx][my];
|
|
double A2[mx][my], B2[mx][my], timeser[100];
|
|
double ah[mx], af[mx], bh[mx], bf[mx], ch[mx], cf[mx], bfe[mx], bhe[mx];
|
|
double dfl[my], d21[mx], d2_1[mx], d2[mx], s[mx], d[mx];
|
|
double ly = 60.0, eps = 0.15, del = 1.25, v = 0.337, va, xmin;
|
|
double hx = 0.20, hy, alff, alfh, tref = 0.0, tpr = 50.0, t, dt, avgdfl;
|
|
double g = 0.00, sflx = 0.00, toler = 3.0e-6;
|
|
FILE *fpw, *fpw1, *fpw2, *fpw3, *fpw4, *fpr, *fpr1;
|
|
long int n, ntot, nref, kiter = 0;
|
|
int niter, ie, je;
|
|
double ttot, ftr, s1, ds, dv, dt1, t1 = -100.0;
|
|
double x0, x1, x2, tst = -3000.0, tch = 60000.0, errt;
|
|
double ReacTerm();
|
|
double ErrChk();
|
|
int mxctr = 100, mcut = 98;
|
|
|
|
|
|
void main(argc, argv)
|
|
int argc;
|
|
char *argv[];
|
|
{
|
|
int i, j, k = 0;
|
|
char str1[30], str2[30], str3[30], str4[30];
|
|
|
|
if( argc > 1 ) { fpr1 = fopen(argv[1], "r"); }
|
|
/* Read the data from Flame.in */
|
|
/* fscanf(fpr," %lf %lf %lf %lf\n",&ly, &ttot, &dt, &sflx ) ; */
|
|
ttot = 3.0e8;
|
|
ly = 109.3;
|
|
dt = 0.1;
|
|
sprintf(str1,"./Fl%.f_%.2fbif.dat",ly, del);
|
|
sprintf(str2,"./Flm%.f_%.2f.ts",ly, del);
|
|
sprintf(str3,"./Flm%.f_%.2f.dat",ly, del);
|
|
sprintf(str4,"./Flm%.f_%.2f.sav",ly, del);
|
|
fpw = fopen(str1, "w");
|
|
fpw1 = fopen(str2, "w");
|
|
fpw2 = fopen(str3, "w");
|
|
fpw3 = fopen(str4, "w");
|
|
fpw4 = fopen("MOVIE.DAT", "w");
|
|
|
|
fprintf(fpw,"@TYPE nxy \n");
|
|
fprintf(fpw2,"@TYPE nxy \n");
|
|
fprintf(fpw4,"Ly = %lf \n", ly);
|
|
|
|
Seth();
|
|
|
|
if ( argc < 2) { /* Initialize if initial data not provided */
|
|
Inset();
|
|
} else {
|
|
PullDat();
|
|
}
|
|
|
|
t = 0.0;
|
|
printf("Data: Ly = %lf, time = %lf\n", ly, t);
|
|
|
|
while(t < 100.0) {
|
|
sflx = 0.0;
|
|
Step();
|
|
t += dt ;
|
|
n ++;
|
|
}
|
|
WriteData();
|
|
Exit();
|
|
}
|
|
|
|
Seth () /* Set some constants */
|
|
{
|
|
int i;
|
|
dt *= 0.5;
|
|
|
|
hy = ly/(my - 1);
|
|
alfh = dt/hy/hy;
|
|
alff = alfh*del;
|
|
for( i = 0; i < mx; i++) {
|
|
|
|
/* 1st Nonlinear grid */
|
|
/* s[i] = hx*(i - mxctr + exp((i-mx+38)/8.0) - exp((i-mx+14)/4.0)); */
|
|
|
|
/* 2nd Nonlinear grid */
|
|
s[i] = hx*(i - mxctr + 0.0*log(1.0 + exp(0.5*(i - mx + 8))) );
|
|
s[i] -= hx*50.0*log(1.0 + exp(5 - i));
|
|
|
|
if ( i > 0 ) { d[i-1] = s[i] - s[i-1] ; }
|
|
}
|
|
|
|
for( i = 1; i < mx - 1; i++) {
|
|
d21[i] = 2.0/(d[i]*(d[i]+d[i-1]));
|
|
d2_1[i] = 2.0/(d[i-1]*(d[i]+d[i-1]));
|
|
d2[i] = -2.0/d[i]/d[i-1];
|
|
|
|
cf[i] = -dt*d21[i]*( del + d[i-1]*v*0.5);
|
|
ch[i] = -dt*d21[i]*( 1.0 + d[i-1]*v*0.5);
|
|
bf[i] = 1.0 - dt*d2[i]*( del - (d[i]-d[i-1])*v*0.5) + 2.0*alff;
|
|
bh[i] = 1.0 - dt*d2[i]*( 1.0 - (d[i]-d[i-1])*v*0.5) + 2.0*alfh;
|
|
af[i] = -dt*d2_1[i]*( del - d[i]*v*0.5);
|
|
ah[i] = -dt*d2_1[i]*( 1.0 - d[i]*v*0.5);
|
|
|
|
}
|
|
ah[0] = 0.0;
|
|
bh[0] = 1.0;
|
|
ch[0] = 0.0;
|
|
|
|
af[0] = 0.0;
|
|
bf[0] = 1.0;
|
|
cf[0] = 0.0;
|
|
|
|
ah[mx-1] = 0.0;
|
|
bh[mx-1] = 1.0;
|
|
ch[mx-1] = 0.0;
|
|
|
|
|
|
af[mx-1] = 0.0;
|
|
bf[mx-1] = 1.0;
|
|
cf[mx-1] = 0.0;
|
|
|
|
dt /= 0.5;
|
|
}
|
|
|
|
|
|
Inset() /* Set initial concentration and temperature profile */
|
|
{
|
|
int i, j;
|
|
for( i = 0; i < mx - 1; i++)
|
|
{
|
|
for( j = 0; j < my; j++)
|
|
{
|
|
if( s[i] > 0.0 ) {
|
|
f[i][j] = 1.0 - exp(-v*s[i]/del);
|
|
h[i][j] = (1.0-eps)*exp(-v*s[i]) + eps;
|
|
} else {
|
|
f[i][j] = 0.0;
|
|
h[i][j] = 1.0;
|
|
}
|
|
}
|
|
}
|
|
|
|
for( j = 0; j < my; j++)
|
|
{
|
|
f[mx-1][j] = 1.0;
|
|
h[mx-1][j] = eps;
|
|
}
|
|
for( j = 0; j < (my-1)/2; j++)
|
|
{
|
|
for( i = 0; i < mx - 1; i++)
|
|
{
|
|
f[i][j] = f[i+1][j];
|
|
h[i][j] = h[i+1][j];
|
|
}
|
|
}
|
|
}
|
|
|
|
PullDat() /* Read conc. & temp. data from specified file */
|
|
{
|
|
int i, j;
|
|
for( j = 0; j < my; j++) {
|
|
for( i = 0; i < mx; i++) {
|
|
fscanf(fpr1,"%lf %lf\n", &f[i][j], &h[i][j]) ;
|
|
}
|
|
}
|
|
}
|
|
|
|
WriteTS() /* Write information about minimum position */
|
|
{
|
|
int i, j;
|
|
for( j = 1; j < my-1 ; j++)
|
|
{
|
|
if(dfl[j] < dfl[j-1] && dfl[j] < dfl[j+1])
|
|
{
|
|
xmin = (j-1)*hy + 0.5*hy*( 4.0*dfl[j] - 3.0*dfl[j-1] - dfl[j+1])/ \
|
|
(2.0*dfl[j] - dfl[j-1] - dfl[j+1]);
|
|
xmin /= ly;
|
|
fprintf(fpw1," %lf %lf\n", t - tch + 100000.0, xmin);
|
|
}
|
|
}
|
|
fflush(fpw1);
|
|
|
|
}
|
|
|
|
WriteData() /* Save data when calculation finished */
|
|
{
|
|
int i, j;
|
|
double xp, yp;
|
|
for( i = 0; i < mxctr + 30; i += 2 )
|
|
{
|
|
fprintf(fpw1,"@TYPE nxy \n");
|
|
for( j = 0; j < my; j++)
|
|
{
|
|
xp = 0.5*hy*j + s[i];
|
|
yp = h[i][j] + 0.001*hy*j;
|
|
fprintf(fpw1,"%lf %lf\n",xp,yp);
|
|
}
|
|
fprintf(fpw1,"&\n");
|
|
}
|
|
|
|
for( j = 0; j < my; j++ ) {
|
|
fprintf(fpw2,"%lf %lf \n", j*hy, dfl[j] );
|
|
}
|
|
|
|
for( j = 0; j < my; j = j + 2) {
|
|
fprintf(fpw1,"@TYPE nxy \n");
|
|
for( i = 0; i < mx; i++ ) {
|
|
xp = 0.5*hy*j + s[i];
|
|
yp = h[i][j] + 0.001*hy*j;
|
|
fprintf(fpw1,"%lf %lf\n",xp,yp);
|
|
}
|
|
fprintf(fpw1,"&\n");
|
|
}
|
|
fprintf(fpw2,"L\n@TYPE nxy\n");
|
|
for( i = 0; i < mx; i++ ) {
|
|
fprintf(fpw2,"%lf %lf %lf\n",s[i], f[i][30], h[i][30]);
|
|
}
|
|
|
|
for( j = 0; j < my; j++) { /* Save data for next restart */
|
|
for( i = 0; i < mx; i++ ) {
|
|
fprintf(fpw3,"%lf %lf \n",f[i][j], h[i][j]);
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
FindDfl() /* Finds position of deflection point of temp. profile */
|
|
{
|
|
int i, j;
|
|
double dd[mx];
|
|
avgdfl = 0.0;
|
|
for( j = 0; j < my; j++ ) {
|
|
dfl[j] = 0.0;
|
|
for( i = mxctr - 40; i < mxctr + 40; i++ ) {
|
|
dd[i] = h[i+1][j]*d21[i] + h[i-1][j]*d2_1[i] + h[i][j]*d2[i];
|
|
if( i > mxctr - 39 ) {
|
|
if( dd[i]*dd[i-1] < 0.0 ) {
|
|
dfl[j] = s[i-1] - d[i-1]*dd[i-1]/(dd[i] - dd[i-1]);
|
|
}
|
|
}
|
|
}
|
|
avgdfl += dfl[j];
|
|
}
|
|
avgdfl /= my; /* Calculate average position */
|
|
}
|
|
|
|
|
|
|
|
Peptdag(a,b,c,d,e,rs,u,k) /* Solves peptadiagonal system of equations */
|
|
double *a, *b, *c, *d, *e, *rs, *u;
|
|
int k;
|
|
{
|
|
double rtc;
|
|
int i2;
|
|
for( i2 = 0; i2 < k-2; i2++ ) {
|
|
if(c[i2] == 0.0) { printf(" Failure in Peptdag, i2 = %d\n", i2); }
|
|
rtc = 1.0/c[i2];
|
|
d[i2] *= rtc;
|
|
e[i2] *= rtc;
|
|
rs[i2] *= rtc;
|
|
c[i2 + 1] -= d[i2]*b[i2 + 1];
|
|
d[i2 + 1] -= e[i2]*b[i2 + 1];
|
|
rs[i2 + 1] -= rs[i2]*b[i2 + 1];
|
|
b[i2 + 2] -= d[i2]*a[i2 + 2];
|
|
c[i2 + 2] -= e[i2]*a[i2 + 2];
|
|
rs[i2 + 2] -= rs[i2]*a[i2 + 2];
|
|
}
|
|
|
|
d[k-2] /= c[k-2];
|
|
rs[k-2] /= c[k-2];
|
|
|
|
c[k-1] -= d[k-2]*b[k-1];
|
|
rs[k-1] -= rs[k-2]*b[k-1];
|
|
|
|
u[k-1] = rs[k-1]/c[k-1];
|
|
u[k-2] = rs[k-2] - u[k-1]*d[k-2];
|
|
|
|
for( i2 = k; i2 > 2; i2-- ) {
|
|
u[i2-3] = rs[i2-3] - u[i2-2]*d[i2-3] - u[i2-1]*e[i2-3];
|
|
}
|
|
}
|
|
|
|
ErrExit(ie, je)
|
|
int ie, je;
|
|
{
|
|
int i,j;
|
|
for( j = 0; j < my; j++ ) {
|
|
fprintf(fpw2,"%lf %g %lf \n", j*hy, (h[ie][j]-h1[ie][j])/toler, h[ie][j]);
|
|
}
|
|
fprintf(fpw2,"&\n@TYPE nxy\n");
|
|
for( i = 0; i < mx; i++ ) {
|
|
fprintf(fpw2,"%lf %g %lf \n", s[i], (h[i][je]-h1[i][je])/toler, h[i][je]);
|
|
}
|
|
Exit();
|
|
}
|
|
|
|
Exit()
|
|
{
|
|
fprintf(fpw,"P \n" );
|
|
fprintf(fpw2,"& \n" );
|
|
printf("\nDone, v = %lf, avgdfl = %lf dt = %lf\n", v, avgdfl, dt);
|
|
fclose(fpr);
|
|
fclose(fpr1);
|
|
fclose(fpw);
|
|
fclose(fpw1);
|
|
fclose(fpw2);
|
|
fclose(fpw3);
|
|
fclose(fpw4);
|
|
exit(0);
|
|
}
|
|
|
|
|
|
Reaction()
|
|
{
|
|
int i,j;
|
|
|
|
for( j = 0; j < my; j++ ) { /* Set reaction terms */
|
|
for( i = 0; i < mx; i++ ) {
|
|
A[i][j] = 0.0;
|
|
B[i][j] = 0.0;
|
|
W[i][j] = 0.0;
|
|
|
|
if( h[i][j] > 0.5 ) {
|
|
if ( f[i][j] < 1.0e-8 || i < 5) {
|
|
h[i][j] += ( 1.0 - eps )*f[i][j];
|
|
f[i][j] = 0.0;
|
|
} else {
|
|
A[i][j] = 0.5*dt*1.0e10*exp(-20.0/h[i][j]);
|
|
W[i][j] = A[i][j]*f[i][j];
|
|
B[i][j] = 20.0*W[i][j]/(h[i][j]*h[i][j]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
DXsi() /* Semiimplicit solver in X */
|
|
{
|
|
double rs[2*mx], u[2*mx], a[2*mx], b[2*mx], c[2*mx], d[2*mx], e[2*mx];
|
|
int i,j;
|
|
|
|
for( j = 0; j < my; j++ ) {
|
|
for( i = 0; i < mx; i++ ) {
|
|
rs[2*i] = f2[i][j] + B[i][j]*h[i][j];
|
|
rs[2*i + 1] = h2[i][j] - 0.85*B[i][j]*h[i][j];
|
|
|
|
if( j > 0 && j < my - 1 ) {
|
|
rs[2*i] += alff*(f[i][j-1] + f[i][j+1]);
|
|
rs[2*i+1] += alfh*(h[i][j-1] + h[i][j+1]);
|
|
}
|
|
if( j == 0 ) {
|
|
rs[2*i] += alff*(2.0*f[i][j+1]);
|
|
rs[2*i+1] += alfh*(2.0*h[i][j+1]);
|
|
rs[2*(mx-5)] += dt*sflx;
|
|
}
|
|
if ( j == my - 1 ) {
|
|
rs[2*i] += alff*(2.0*f[i][j-1]);
|
|
rs[2*i+1] += alfh*(2.0*h[i][j-1]);
|
|
rs[2*(mx-5)] -= dt*sflx;
|
|
}
|
|
|
|
a[2*i] = af[i];
|
|
a[2*i + 1] = ah[i];
|
|
b[2*i] = 0.0;
|
|
b[2*i + 1] = -0.85*A[i][j];
|
|
c[2*i] = bf[i] + A[i][j];
|
|
c[2*i + 1] = bh[i] - 0.85*B[i][j];
|
|
d[2*i] = B[i][j];
|
|
d[2*i + 1] = 0.0;
|
|
e[2*i] = cf[i];
|
|
e[2*i + 1] = ch[i];
|
|
}
|
|
rs[0] = 0.0;
|
|
rs[1] = 1.0;
|
|
rs[2*mx-2] = 1.0;
|
|
rs[2*mx-1] = eps;
|
|
|
|
Peptdag(a, b, c, d, e, rs, u, 2*mx);
|
|
|
|
|
|
for( i = 0; i < mx; i++ ) {
|
|
f1[i][j] = u[2*i];
|
|
h1[i][j] = u[2*i + 1];
|
|
}
|
|
}
|
|
}
|
|
|
|
DExpl() /* Explicit */
|
|
{
|
|
int i,j;
|
|
/* Diff in X dir */
|
|
|
|
for( j = 0; j < my; j++ ) {
|
|
for( i = 1; i < mx-1; i++ ) {
|
|
h1[i][j] = h[i][j]*(1.0-bh[i]) - h[i+1][j]*ch[i] - h[i-1][j]*ah[i];
|
|
f1[i][j] = f[i][j]*(1.0-bf[i]) - f[i+1][j]*cf[i] - f[i-1][j]*af[i];
|
|
}
|
|
}
|
|
|
|
for( i = 0; i < mx; i++ ) {
|
|
for( j = 1; j < my-1; j++ ) {
|
|
h1[i][j] += alfh * (h[i][j+1] + h[i][j-1]);
|
|
f1[i][j] += alff * (f[i][j+1] + f[i][j-1]);
|
|
}
|
|
h1[i][0] += 2.0*alfh*h[i][1];
|
|
f1[i][0] += 2.0*alff*f[i][1];
|
|
h1[i][my-1] += 2.0*alfh*h[i][my-2];
|
|
f1[i][my-1] += 2.0*alff*f[i][my-2];
|
|
}
|
|
|
|
f1[mx-5][0] += dt*sflx;
|
|
f1[mx-5][my-1] -= dt*sflx;
|
|
|
|
for( j = 0; j < my; j++ ) {
|
|
for( i = 0; i < mx-1; i++ ) {
|
|
h1[i][j] += ( 1.0 - eps )*W[i][j];
|
|
f1[i][j] += -W[i][j];
|
|
}
|
|
h1[mx-1][j] = 0.0;
|
|
f1[mx-1][j] = 0.0;
|
|
f1[0][j] = 0.0;
|
|
h1[0][j] = 0.0;
|
|
}
|
|
|
|
}
|
|
|
|
double ErrChk(toler)
|
|
double toler;
|
|
{
|
|
double ermax, err;
|
|
int i,j;
|
|
ermax = 0.0;
|
|
|
|
for( j = 0; j < my; j++ ) {
|
|
for( i = 0; i < mx; i++ ) {
|
|
err = (h[i][j] - h1[i][j]);
|
|
err *= err;
|
|
if ( err > ermax ) {
|
|
ermax = err;
|
|
ie = i;
|
|
je = j;
|
|
}
|
|
}
|
|
}
|
|
|
|
/* printf("\t %lf %d %d \r", \
|
|
(h[ie][je] - h1[ie][je])/toler, ie, je);
|
|
fflush(stdout); */
|
|
|
|
for( j = 0; j < my; j++ ) {
|
|
for( i = 0; i < mx; i++ ) {
|
|
f[i][j] = 0.97*f1[i][j] + 0.03*f[i][j];
|
|
h[i][j] = 0.97*h1[i][j] + 0.03*h[i][j];
|
|
}
|
|
}
|
|
return (ermax/(toler*toler));
|
|
}
|
|
|
|
Iter()
|
|
{
|
|
int i,j;
|
|
double errt;
|
|
|
|
Reaction();
|
|
DExpl();
|
|
for( j = 0; j < my; j++ ) {
|
|
for( i = 0; i < mx; i++ ) {
|
|
f2[i][j] = f[i][j] + f1[i][j];
|
|
h2[i][j] = h[i][j] + h1[i][j];
|
|
f[i][j] += 2.0*f1[i][j];
|
|
h[i][j] += 2.0*h1[i][j];
|
|
}
|
|
}
|
|
niter = 0;
|
|
do {
|
|
Reaction();
|
|
DXsi();
|
|
niter ++;
|
|
errt = ErrChk(toler);
|
|
} while( errt > 1.0 && niter < 12);
|
|
}
|
|
|
|
Step()
|
|
{
|
|
int i,j,ntry = 0;
|
|
|
|
for( j = 0; j < my; j++ ) {
|
|
for( i = 0; i < mx; i++ ) {
|
|
f3[i][j] = f[i][j];
|
|
h3[i][j] = h[i][j];
|
|
}
|
|
}
|
|
|
|
Iter();
|
|
|
|
if ( niter > 10 ) {
|
|
dt *= 0.5;
|
|
t -= dt;
|
|
n--;
|
|
ntry++;
|
|
Seth();
|
|
for( j = 0; j < my; j++ ) {
|
|
for( i = 0; i < mx; i++ ) {
|
|
f[i][j] = f3[i][j];
|
|
h[i][j] = h3[i][j];
|
|
}
|
|
}
|
|
} else {
|
|
if ( niter > 4 ) {
|
|
dt *= 0.9;
|
|
Seth();
|
|
}
|
|
ntry = 0;
|
|
}
|
|
|
|
if ( ntry > 50 ) { ErrExit(ie, je); }
|
|
|
|
if ( niter < 4 ) {
|
|
dt *= 1.1;
|
|
Seth();
|
|
}
|
|
printf(" t=%.1lf, nit=%d, dt=%.2lf, xmin = %.4lf \r",\
|
|
t, niter, dt, xmin);
|
|
fflush(stdout);
|
|
}
|
|
|
|
PrinT()
|
|
{
|
|
int jts;
|
|
FindDfl();
|
|
|
|
ds = avgdfl - s1;
|
|
s1 = avgdfl;
|
|
dt1 = t - t1;
|
|
dv = ds/dt1;
|
|
|
|
if (t1 > 0.0) {
|
|
v += dv + avgdfl/tpr;
|
|
Seth();
|
|
}
|
|
t1 = t;
|
|
|
|
WriteTS();
|
|
|
|
for ( jts = 99; jts > 0; jts-- ) {
|
|
timeser[jts] = timeser[jts - 1];
|
|
}
|
|
timeser[0] = xmin;
|
|
|
|
|
|
x2 = x1;
|
|
x1 = x0;
|
|
x0 = xmin;
|
|
if ( (x2 - x1)*(x1 - x0) < 0.0 && x2 > 0.0) {
|
|
if( t > tch - 20000.0 ){
|
|
fprintf(fpw,"%g %g\n", ly, x1);
|
|
fflush(fpw);
|
|
}
|
|
if ( t > tst + 400.0 ) {
|
|
tst = t;
|
|
sflx = g*(x1 - 0.5);
|
|
}
|
|
printf("t=%.1lf, Extr. detected = %lf; sflx=%lf \n", t, x1, sflx);
|
|
}
|
|
}
|
|
|
|
|
|
------------------------------
|
|
|
|
From: Benedict J Raia <br2a+@andrew.cmu.edu>
|
|
Subject: X Font Creation?
|
|
Date: Sat, 1 Oct 1994 15:02:07 -0400
|
|
|
|
I'd like to know if there is Linux software available that I can use to edit
|
|
or create fonts for X.
|
|
|
|
Thanks,
|
|
Ben Raia
|
|
br2a+@andrew.cmu.edu
|
|
raia@psc.edu
|
|
|
|
------------------------------
|
|
|
|
Crossposted-To: sbay.linux,ba.seminars,comp.unix.misc,comp.unix.pc-clone.32bit,comp.unix.programmer
|
|
From: Charles Liu <alte@rahul.net>
|
|
Subject: SEMINAR: LINUX - A UNIX Clone. 10/5. By ILA
|
|
Date: Sat, 1 Oct 1994 01:20:57 GMT
|
|
|
|
|
|
ILA (tm) International Linux Association (tm) :
|
|
|
|
|
|
Contact: 408-369-9818; alte@rahul.net
|
|
|
|
******* Linux Seminar on 10/5 **********
|
|
|
|
Topic: Linux - a Complete PC UNIX(tm) Clone, by Randy Hootman
|
|
|
|
Time: 6:00 - 10:00 pm, October 5, 1994 (Wednesday)
|
|
|
|
Location: 2940 Scott Blvd., Santa Clara. (Near Central Expressway; if you
|
|
are from San Francisco on 101, make right turn on San Thomas, then left
|
|
turn on Scott)
|
|
|
|
Cost: Member $20; Non-member $25. (The fee may be increased in
|
|
near future)
|
|
|
|
Audience:
|
|
1. Experienced Unix professionals like to see how to install your own Unix system on your PC inexpensively and experience how other Unix hackers world wide are enhancing the system on hourly bases.
|
|
2. Computer professionals like to start learning Unix.
|
|
3. Corporate MIS personnel like to explore this new open system of open systems, to seek why PC Week is using Linux for internal Internet and W-Window services.
|
|
|
|
Display/Sale: Various current Linux CDs, Books, Linux Journal.
|
|
|
|
Note:
|
|
|
|
Same class will be offered again (Wednesdays in October, please call); also
|
|
watch for our future offer of advanced Linux related seminars such as networking.
|
|
|
|
===============================================================================
|
|
|
|
Linux is a free Unix clone, can be purchased as low as $20 on CD-ROM Disc. Linux gives stable full power of POSIX Unix including kernel, C/C++, X-Window, NFS, TCP/IP, INTERNET and MOSAIC, along with editing and system administration programs.
|
|
Linux was selected as the product of the week by PC Week April 11, 1994, and used internally for PC Week's WWW, FTP, and X Window host server.
|
|
Over 80 people have attended this seminar during last two months,
|
|
resulting in saving learning curve and time to bring Linux to live.
|
|
|
|
Seminar content (with live demonstration):
|
|
|
|
I. Brief History of Linux
|
|
II. System Features
|
|
III. Software Features
|
|
IV. Installation
|
|
V. Setting up X-Windows
|
|
VI. Obtaining programs and compiling
|
|
VII. System administration
|
|
VIII. Frequent asked questions and problems.
|
|
|
|
--
|
|
End of Note
|
|
|
|
------------------------------
|
|
|
|
From: robp@unixg.ubc.ca (Robert Bruce Prior)
|
|
Subject: Re: SCO WordPerfect: does it run on Linux?
|
|
Date: 29 Sep 1994 18:06:43 GMT
|
|
|
|
: Hmm, I was told that 5.1 was the first X version.... perhaps they meant
|
|
: the first X version for SCO. Maybe an earlier, slower, buggier version
|
|
: was available for other platforms.
|
|
|
|
Speaking of SCO WP, I e-mailed someone at Wordperfect and found out that
|
|
there should be a demo version of WP6.0 for SCO on the ftp site in a week
|
|
or two.
|
|
|
|
(waiting with baited breath... :)
|
|
|
|
-R
|
|
|
|
|
|
------------------------------
|
|
|
|
|
|
** FOR YOUR REFERENCE **
|
|
|
|
The service address, to which questions about the list itself and requests
|
|
to be added to or deleted from it should be directed, is:
|
|
|
|
Internet: Linux-Misc-Request@NEWS-DIGESTS.MIT.EDU
|
|
|
|
You can send mail to the entire list (and comp.os.linux.misc) via:
|
|
|
|
Internet: Linux-Misc@NEWS-DIGESTS.MIT.EDU
|
|
|
|
Linux may be obtained via one of these FTP sites:
|
|
nic.funet.fi pub/OS/Linux
|
|
tsx-11.mit.edu pub/linux
|
|
sunsite.unc.edu pub/Linux
|
|
|
|
End of Linux-Misc Digest
|
|
******************************
|