Back


Newsgroup sci.math.num-analysis 29424

Directory

Subject: Optimum FIR: 1D to 2D transformation -- From: Bettinzana Silvano
Subject: 3D surface representation -- From: snap
Subject: why does loop unrolling work? -- From: jasonp@Glue.umd.edu (Jason Stratos Papadopoulos)
Subject: Re: Good book for Applications of Group Theory? -- From: bje1001@cus.cam.ac.uk (Kitty)
Subject: Re: Good book for Applications of Group Theory? -- From: jasho@expert.cc.purdue.edu (Yashowanto Ghosh)
Subject: Re: why does loop unrolling work? -- From: Keith Bierman QED
Subject: Re: Help num-analysis of complex PDE's -- From: damien_h@postoffice.utas.edu.au (Damien Holloway)
Subject: Matrix operator implementation in C++ -- From: "Stephen W. Hiemstra"
Subject: "New" improvement in field of Num. Analysis -- From: Evelyn
Subject: Introduction on Spherical harmonics -- From: entchsun@WavDon.en.polyu.edu.hk (TaiChiu Hsung)
Subject: Re: 3D surface representation -- From: suter@fawlty8.eng.monash.edu.au (Mr D. Suter)
Subject: Final call for papers IEEE SMC 1997 Orlando -- From: fridrich@binghamton.edu ()
Subject: Re: Need to handle Big Matrix (800x800) to use optimization algorithms -- From: jmccarty@sun1307.spd.dsccc.com (Mike McCarty)
Subject: Q:galerkin method -- From: Delphine Wolfersberger
Subject: Re: multidim. secant method ? -- From: spellucci@mathematik.th-darmstadt.de (Peter Spellucci)
Subject: Re: why does loop unrolling work? -- From: n8tm@aol.com (N8TM)
Subject: Re: Optimization of functions -- From: "Hans D. Mittelmann"
Subject: Optimization of functions -- From: Romualdo Ruotolo
Subject: Re: Q:galerkin method -- From: "Michael E. Hosea"
Subject: Asin -- From: peter_rasmussen@fcgate.aapda.org.au (Peter Rasmussen)
Subject: Re: How to find eigenvalues of "bad" matrix -- From: hwolkowi@orion.math.uwaterloo.ca (Henry Wolkowicz)
Subject: Re: Optimization of functions -- From: borchers@nmt.edu (Brian Borchers)
Subject: fast hankel transform -- From: david.jones@kcl.ac.uk (David Ll. Jones)
Subject: Re: Matrix operator implementation in C++ -- From: Steve
Subject: Re: How to determine what values are small enough to be set to zero in SVD? -- From: nmm1@cus.cam.ac.uk (Nick Maclaren)
Subject: Re: Good book for Applications of Group Theory? -- From: odonovan@physun.cis.mcmaster.ca (Chris O'Donovan)
Subject: Re: Important Dif.-Equation -- From: vmhjr@frii.com (Virgil Hancher)
Subject: Re: Matrix operator implementation in C++ -- From: Joe Pekarek
Subject: Re: Need help with math for splines -- From: darenw@pipeline.com (Daren Scot Wilson)
Subject: How to determine what values are small enough to be set to zero in SVD? -- From: cml@oxywhite.interaccess.com (Billy Leung)
Subject: Re: Matrix operator implementation in C++ -- From: Alexey Goldin
Subject: More JakeWeb Challenges!!! -- From: Jacob Martin
Subject: Thank You! -- From: "Willieum J. Melton"

Articles

Subject: Optimum FIR: 1D to 2D transformation
From: Bettinzana Silvano
Date: Thu, 09 Jan 1997 19:06:13 +0100
I wrote a C++ function which let me design an optimum
1D FIR filter. This function gives me the analitic espression of
the frequency response of the filter between 0 and Pi. (I use the
Lagrange interpolation formula for cosine polinhomials) 
(The response is simmetric around the origin of frequencies because
I want real coefficients in the impulse response)
Now, I want to design the corresponding 2D optimum FIR filter with
circular simmetry but I can't apply the Parks-McClellan algorithm
(Remez exchange algorithm) that I used for 1D. I can't use a linear
programming approach because of the high number of points of the
filter. My idea is to sample the analitic frequency response on a
grid of NxN points where N is the length of the 2D filter (I calculate
the distance of every point of the grid from the origin of the axes
and then I use this radius in the analitic expression of the frequency
response).Then I will take the 2D inverse FFT to have the coefficient
of the filter.
My problem is: if the orizzontal and vertical frequencies varies
between -Pi and Pi, what is the value of frequency (that i have to use
in the analitic expression) of the points near the corner of the grid ?
Do you think that my approach is correct ?
If you have some idea for the transformation from 1D to 2D I will be
very happy.
Thanks.
-- 
*********************************
Bettinzana Silvano
DSP Lab. Faculty of Engineering 
(Brescia University, ITALY)
Address: via Rimembranze 
         25038 Rovato (BS) ITALY
mailto:silvano@franciacorta.it
*********************************
Return to Top
Subject: 3D surface representation
From: snap
Date: Thu, 09 Jan 1997 18:46:27 -0800
Hi!
  Does anybody knows some nice surface approximation
in 3D which contains exactly pre-given set of points.
  2D analogue is piecewise polynomial spline
curve which has continuous 1st & 2nd derivatives
and contains pre-given set of marker points.
  What I expect in 3D is continuity of 1st & 2nd derivatives.
Thanx in advance!!!
Return to Top
Subject: why does loop unrolling work?
From: jasonp@Glue.umd.edu (Jason Stratos Papadopoulos)
Date: 9 Jan 1997 17:48:31 GMT
I was just wondering. How much should you unroll? Do the same rules apply
for integer math?
Thanks in advance,
jasonp
Return to Top
Subject: Re: Good book for Applications of Group Theory?
From: bje1001@cus.cam.ac.uk (Kitty)
Date: 8 Jan 1997 19:34:48 GMT
In article ,
Lou Pecora  wrote:
>At present I am using an old version of Tinkham's book on Group Theory and
>Quantum Mechanics.  Is there another (better?) book to serve as an
>introduction to applications of group theory and group representations? 
>I'd like something on the grad level with good coverage on the basic math
>that's need, but lots of applications, too (Condensed matter, chemistry,
>etc.).  Should cover point and space groups (definitely), the symmetric
>group (maybe), and, perhaps, some introduction to Lie Groups (nothing deep
>here).
I almost hesitate to recommend it, for fear it might be too simplistic, but 
Groups, Representations and Physics by HF Jones is a book I found useful, 
if quite simple-minded. Very definitely a book for the beginner, and more 
concerned with introducing representation theory than with applications. 
Good on the basic representation theory of finite groups, but not much 
systematic study of space groups. Had a reasonable chapter on molecular 
vibrations and some good stuff on Hartree-Fock if I remember correctly. A 
book to avoid is Cornwell's Group Theory in Physics. If you didn't like 
Hammermesh, you'll hate this. 
B
-- 
Kitty (bje1001@cam.ac.uk) Girton College, Cambridge, UK
C! N* F+ O(b+) G+ A++++  http://bust.web.site/ Tel: 328943
"Oh the prawns, the eels" - A testimony to the decline of seafood in Rome.
Return to Top
Subject: Re: Good book for Applications of Group Theory?
From: jasho@expert.cc.purdue.edu (Yashowanto Ghosh)
Date: 8 Jan 1997 23:30:16 GMT
Lou Pecora (pecora@zoltar.nrl.navy.mil) wrote:
: At present I am using an old version of Tinkham's book on Group Theory and
: Quantum Mechanics.  Is there another (better?) book to serve as an
: introduction to applications of group theory and group representations? 
: I'd like something on the grad level with good coverage on the basic math
: that's need, but lots of applications, too (Condensed matter, chemistry,
: etc.).  Should cover point and space groups (definitely), the symmetric
: group (maybe), and, perhaps, some introduction to Lie Groups (nothing deep
: here).
BTW I have checked out Hammermesh and hate it.  Thanks for any suggestions.
: Lou Pecora
: code 6343
: Naval Research Lab
: Washington  DC  20375
: USA
:  == My views are not those of the U.S. Navy. ==
: ------------------------------------------------------------
:   Check out the 4th Experimental Chaos Conference Home Page:
:   http://natasha.umsl.edu/Exp_Chaos4/
: ------------------------------------------------------------
Try the book by Jean-Pierre Serre on group representations. It's supposed to
be tailormade for applications to quantum chemistry.
Good luck.
Jasho.
Return to Top
Subject: Re: why does loop unrolling work?
From: Keith Bierman QED
Date: 09 Jan 1997 14:48:31 -0800
jasonp@Glue.umd.edu (Jason Stratos Papadopoulos) writes:
> 
> I was just wondering. How much should you unroll? Do the same rules apply
> for integer math?
> 
It all depends on the hardware and the compilation system. 
What is fundamentally going on is that many "modern" processors (the
CDC6600 was modern in this sense ;>) have multiple function units,
that is to say, they can do more than one thing at a time. However,
what particular things can be at once varies a *lot*. Either the
programmer/user or the compiler has to rearrange the computations so
as to allow the multiple units to work in parallel.
If you unroll too much by hand, you may upset the compiler's own
heuristics and/or simply run out of resources (e.g. registers to hold
temporary values) in which case you may get serious slowdown.
Of course, sometimes the code author can know things the compiler
never could (such as the loop will always be divisible by 3, if so
unrolling by 3 and even omitting the test with "cleanup" may be
feasible (albeit not very safe ;>).
If your compiler allows one to generate an assembly file as output, it
may be handy to code the loop several ways and examine the
output. Compare what comes out with your best effort at coding in the
machine's assembler by hand. Tweak the source code until the compiler
matches (or exceeds) the performance of your handwork. Use the
insights gained to work on other loops in source form only. Assume you
have to revisit and rehack for every compiler and chip upgrade, if you
want to maintain your performance edge.
-- 
Keith H. Bierman    keith.bierman@Sun.COM| khb@chiba.Eng.Sun.COM
SunSoft Developer Products		 | khb@netcom.com
 2550 Garcia UMPK16-304   415 786-9296   | (415 7869296) fax 
Mountain View, CA 94043   Copyright 1996
Return to Top
Subject: Re: Help num-analysis of complex PDE's
From: damien_h@postoffice.utas.edu.au (Damien Holloway)
Date: 10 Jan 1997 00:13:32 GMT
In article <32D31B64.681@sdcc3.ucsd.edu>, lnett@sdcc3.ucsd.edu says...
>
>I am a grad. student in Chemical engineering trying to solve a 
>system of PDE's of the form : Ct(t,x)=Cxx(t,x) + C(t,x)*H(t,x)
>where Ct and Cxx are the first derivative with respect to time
>and the second derivative with respect to x.  I have tried using
>the Numerical Method of Lines but the system is so stiff that
>in order for the solution to be stable my step size needs to be
>really small, too small.  I am open to any suggestion on alternate
>methods for solving the system.  I am also looking for a good
>book on the subject.  If anyone has any information please e-mail me
>lnett@sdcc3.ucsd.edu.       Thanks.    Laura
A couple of books I have found useful in describing stiff problems and 
their solution are
C. William Gear. "Numerical Initial Value Problems in Ordinary 
Differential Equations." Prentice-Hall, 1971.
R. W. Hamming. "Numerical Methods for Scientists and Engineers." 
McGraw-Hill, 2nd ed., 1973.
and the "Numerical Recipes in [Fortran/C/...]" books by Press, 
Teulkolsky, Vetterling and Flannery.
I assume it is the time stepping where the stiffness occurs.  (Is it a 
boundary value problem in space and an initial value problem in time?)  
There are plenty of other books, but many of them seem to me to be 
written by mathematicians for mathematicians.
Stiffness usually comes from the presence of a mixture of very short time 
scale and very long time scale transients.
Implicit integration methods often work.  You take a backwards step from 
a 'guess' of the solution at the next time step, and iterate that guess 
until the backwards step lands you on your current point (to within a 
specified tolerance).
This will stabilise the problem, but you will lose all detail in the 
short time scale transients.  If this detail is important you will have 
to stay with the short time step until these transients have died out, 
and then change to the bigger time steps.
Hope this helps.
Damien Holloway
Return to Top
Subject: Matrix operator implementation in C++
From: "Stephen W. Hiemstra"
Date: 10 Jan 1997 01:03:00 GMT
I want to implement a simple addition operator in C++ (Borland C++ 5.01). 
I was able to implement a += operator just fine, but the straight +
operator poses a problem in returning a value that will not affect my
existing matrix.  The problem comes in creating an appropriate temporary
matrix to return the new matrix value.   As shown below, the obvious and
erroneous answer (a local temporary) is inappropriate.  How to I handle a
global or static return matrix properly (that is, avoiding a memory leak)?
Stephen
// Example of what not to do:
CivMatrix& CivMatrix::operator + ( const CivMatrix& m )
{
	CivMatrix g_iv( m_iRow, m_iCol );
	for( int i=k0;i
Return to Top
Subject: "New" improvement in field of Num. Analysis
From: Evelyn
Date: Fri, 10 Jan 1997 11:37:20 -0800
Hi all, I'm a final year student study in the field of Applied
Mathematics. And my final year project is " A Studying of Splitting
Extrapolation using Finite Element Method ". 
Now, I just want to tell all interesting in field of splitting
extrapolation that the new method had been found and I'm recommand the
Book " The Splitting Extapolation Method" wrote by Liem, Liu & Shih,
1/ed.,1995. ( I'm using the theory inside the book for my project, since
my supervisor is one of the authors of above book. I think this is
valuable to read in reducing CPU time and storage.)
If there anybody interest with this title , feel feel to contact me, and
I will share my experience to you.
Hoping those information can help anybody.
Return to Top
Subject: Introduction on Spherical harmonics
From: entchsun@WavDon.en.polyu.edu.hk (TaiChiu Hsung)
Date: 10 Jan 1997 01:41:26 GMT
Could anyone please suggest some introductory reading
on Spherical harmonics?
Thanks in advances.
-- 
  ---------------------------------------------------------
  Tai-Chiu Hsung,               enhsung@hkpu07.polyu.edu.hk
  Research student of Department of Electronic Engineering,
  The Hong Kong Polytechnic University.
Return to Top
Subject: Re: 3D surface representation
From: suter@fawlty8.eng.monash.edu.au (Mr D. Suter)
Date: 10 Jan 1997 02:38:12 GMT
In article <32D5AD81.1981@lanet.lv> snap  writes:
>Hi!
>  Does anybody knows some nice surface approximation
>in 3D which contains exactly pre-given set of points.
>  2D analogue is piecewise polynomial spline
>curve which has continuous 1st & 2nd derivatives
>and contains pre-given set of marker points.
>  What I expect in 3D is continuity of 1st & 2nd derivatives.
>Thanx in advance!!!
The spline in 2D, to which you refer, is the cubic spline
which has an energy function minimization property
(integral of square of second derivs). The usually quoted
3D analogue (2D surface in 3D) is the thin-plate spline.
This, however, only has 1st deriv continuity of the data points.
It is defined by minimizing the integral of the a combination of
second derivatives of the function. You would have to use a smoothness
functional that had third order derivatives to get second order
continuity at the data points. All of this is in Grace Wahba's
book - Spline Models for Observational Data, SIAM Press.
BTW for a number of reasons, most people take another route
to generalising the cubic spline - tensor products of
cubic splines. The background theory (minimizing semi-norms)
is not as elegant, and the the functions are not isotropic,
but the theory is usually much easier to understand
and the matrix systems reasier solve.
regards
d.s.
-- 
David Suter - Dept. of Electrical and
Computer Systems Engineering, Monash University,
Clayton, Vic. 3168, Australia
ph 9905 5682 Fax 9905 3454
Return to Top
Subject: Final call for papers IEEE SMC 1997 Orlando
From: fridrich@binghamton.edu ()
Date: 9 Jan 1997 18:12:25 GMT
                      FINAL CALL FOR PAPERS
__________________________________________________________________
1997 IEEE International Conference on Systems, Man, and Cybernetics
Hyatt Orlando, Orlando, Florida, USA * October 12-15, 1997
Computational Cybernetics and Simulation
__________________________________________________________________
I am organizing a track at the below conference. The track will
have 2-3 sessions directed towards applied chaotic systems for
simulation, data mining, control, image processing and encryption,
and possibly other related topics connected with chaos.
Jiri Fridrich
Center for Intelligent Systems
SUNY Binghamton, NY 13902-6000
E-mail: fridrich@bingsuns.cc.binghamton.edu
Ph/Fx: 607-777-2577
___________________________________________________________________
                     Preliminary Announcement
1997 IEEE International Conference on Systems, Man, and Cybernetics
Hyatt Orlando, Orlando, Florida, USA * October 12-15, 1997
Computational Cybernetics and Simulation
Location: October 12-15, 1997 at the Hyatt Orlando in Orlando, FL.
          Room rate: $105.00 per night, single or double.
          Located in the heart of Central Florida. Easy access to
          Disney World, Sea World, Universal Studios. Golf course,
          a health club, tennis courts, swimming pools, restaurants.
Theme:    Computational Cybernetics and Simulation has been
          selected to emphasize the growing importance of compu-
          tational methods and modeling tools in the design,
          analysis, and control of complex systems. Presentations
          dealing with theoretical perspectives, new computational
          tools, new paradigms in simulation, and innovative
          modeling applications are encouraged.
Organizing Committee:
          General Chair, James M. Tien, RPI
          Technical Programs Chair, Charles J. Malmborg, RPI
          Technical Arrangements Chair, Julia Pet-Edwards, Uni-
             versity of Central Florida
          Functional Arrangements Chair, Mansooreh Mollaghasemi,
             University of Central Florida
          Promotional Programs Chair, Mark J. Embrechts, RPI
Call for Contributed Papers:
          The Technical Programs Committee solicits papers for pre-
sentation at the conference. All papers will be reviewed by
          up to three referees for technical merit and content on the
          basis of an abstract of no more than 300 words. Papers
          accepted for presentation will appear in the Conference
          Proceedings. All abstracts must have a cover page containing
          the title of the paper along with the names, affiliations,
          and complete mailing addresses of all authors, as well as
          a rank-ordered list of the three designated topic areas
          most closely related to the paper. The cover sheet should
          list the two-digit number along with the name of each of
          the three designated topic areas. All correspondence will
          be directed to the first named author unless indicated
          otherwise. We regret that e-mail abstracts of paper
          submissions cannot be accepted. Six pages will be allocated
          in the Proceedings for each accepted paper. Papers which
          exceed this length will be charged on a per page basis.
          Each paper presentation should take no more than 20-30 min.
Call for Invited Sessions / Tracks:
          Invited Sessions (each comprised of 4-6 papers) and
          invited tracks (each comprised of at least 2 sessions) are
          solicited in all topic areas. Survey papers and/or case
          studies could form the basis of invited sessions. Each
          prospective session/track organizer must submit a proposal
          including the title of the session/track, a rank-ordered
          list of the three topic areas most closely related to the
          session/track, and a list of authors with paper titles and
          abstracts.
Call for Conference Tutorials:
          The Technical Arrangements Committee solicits proposals
          for half-day tutorials or workshops which are related to
          the conference theme. An honorarium will be provided for
          each tutorial based on the number of registered attendees.
Important Dates:
          FEBRUARY 15, 1997 (FIRM) Deadline for 3 copies of
              contributed paper abstract (with topic area designations)
          MARCH 15, 1997 (FIRM)    Deadline for 3 copies of
              invited session/track proposal (with topic area
              designation)
          APRIL 15, 1997 (FIRM)    Acceptance/rejection notification
              of contributed paper abstracts and invited session/track
              proposals
          JUNE 15, 1997            Deadline for final "camera ready"
              paper and author preregistration
DESIGNATED TOPIC AREAS:
1 Computational Cybernetics
11 Biocybernetics
12 Statistics and Forecasting
13 Pattern Recognition and Classification
14 Image Processing and Classification
15 Fuzzy Systems
16 Neural Networks and Computational Intelligence
17 Data Mining and Knowledge Discovery
18 Optimization, Heuristics, and Search Methods
2 Decision Systems
21 Cognitive Systems and Engineering
22 Desision and Conflict Analysis
23 Decision Support, Expert and Knowledge Systems
24 Management Information Systems
25 Medical Informatics and Decision Making
26 Multicriteria and Group Decision Making
27 Visualization, Multimedia, and Graphical Interfaces
28 Database and Software Engineering
3 Human-Machine Systems
31 Command and Control Systems
32 Human Computer Interaction and Virtual Reality
33 Human Factors in Design
34 Robotics
35 Quality and Productivity
36 Training Technology
37 Adaptive and Learning Systems
38 Machine Learning
4 Simulation
41 Animation
42 Continuous Simulation and Applications
43 Discrete Event Dynamic Systems
44 Output Analysis
45 Simulation Languages and Software
46 Simulation Training Systems
47 Military Simulation
48 Simulation Methodology
5 System Methods and Applications
51 Systems Modeling, Analysis, and Evaluation
52 Education and Multimedia
53 Communications and Transportation Systems
54 Energy and Environmental Systems
55 Health Care Systems
56 Service and Public Sector Systems
57 Military Systems
58 Manufacturing Systems and Petri Nets
**********************************************************************
|  Jiri FRIDRICH, Research Associate, Dept. of Systems Science and   |
|  Industrial Engineering, Center for Intelligent Systems, SUNY      |
|  Binghamton, Binghamton, NY 13902-6000, Tel.: (607) 797-4660,      |
|  Fax: (607) 777-2577, E-mail: fridrich@binghamton.edu              |
**********************************************************************
......................................................................
Remember, the less insight into a problem, the simpler it seems to be!
----------------------------------------------------------------------
Return to Top
Subject: Re: Need to handle Big Matrix (800x800) to use optimization algorithms
From: jmccarty@sun1307.spd.dsccc.com (Mike McCarty)
Date: 10 Jan 1997 03:06:49 GMT
In article ,
Gary Hampson   wrote:
)In article <32C90B5C.64B1@public.ibercaja.es>, benigno
) writes
)>Hi,
)>       I need to handle Big matrix of around 800 x 800 to implement
)>       some optimization algorithms, I would use C++ libraries if
)>       possible to use on BorlandC++ 4.5, but if there is any shareware
)
)Unless the matrix has some structure which allows many short cuts and
)reduced storage (eg Toeplitz), then just get on with coding it. 800*800
)is not that big (unless of course in the optimisation you need to
)evaluate A.x many times, or you have some time critical conditions.
)-- 
)Gary Hampson
800x800 is not that big? Assuming 64 bit reals, that works out to about 5
megabytes of data. Since he's usig BorlandC, that means he's more or
less stuck with the 640K of main RAM.
If you need that big a matrix, I suggest you may switch to DJGPP
(version of GNU CC) for the DOS machines. It automatically allows using
of virtual memory.
Mike
-- 
----
char *p="char *p=%c%s%c;main(){printf(p,34,p,34);}";main(){printf(p,34,p,34);}
This message made from 100% recycled bits.
I don't speak for DSC.         <- They make me say that.
Return to Top
Subject: Q:galerkin method
From: Delphine Wolfersberger
Date: Fri, 10 Jan 1997 09:40:57 +0100
Hello,
I am trying to solve a nonlinear partial differentiel equations using 
the Galerkin method. The nonlinear PDE is of the form :
a*(d2E/dxdt)-b*E*E"+c*f(x,t)*E'+d*g(x,t)*E=0
where E", E' are the derivatives with x.
I have got problem solving this with the term a*(d2E/dxdt). When I use 
interpolation functions  which are linear or quadratic, I always found 
a matrix for this term which determinant is null. So the calculus 
result in a system which is not solvable. I don't know how to solve 
such an equation. I would appreciate suggestions to solve it.
Thank you in advance.
Delphine Wolfersberger.
Return to Top
Subject: Re: multidim. secant method ?
From: spellucci@mathematik.th-darmstadt.de (Peter Spellucci)
Date: 10 Jan 1997 12:49:49 GMT
In article <32D4B701.15FB7483@ic.ac.uk>, Jorge Paloschi  writes:
|> Uwe Schmitt wrote:
|> > 
|> > hi,
|> > 
|> > i try to solve some equation F(x)=0 numericaly.
|> > x = (x1,...,xn),  F(x) = (f1(x),...,fm(x)).
|> > im not able to use a multidimensional newton-method, because
|> > im not able to compute the derivative DF ( F is computed
|> > by a simulation of a physical process).
|> > is there something like a "secant"-method in multi-dimensions ?
|> 
|> Use Discrete Newton, that is, finite differences approximation to
|> Jacobian. If n is large and your F(x) has a sparse Jacobian you can then
|> use the CPR algorithm to minimize the number of function evaluations.
|> 
|> Jorge
why not using Broyden's method ? discrete Newton is somewhat costly
Its main benefit comes from possible globalization of convergence 
via damping (backtracking). The modified Secant method of Gragg&Stewart;
SINUM 13, 1976, may also be useful.
peter
Return to Top
Subject: Re: why does loop unrolling work?
From: n8tm@aol.com (N8TM)
Date: 10 Jan 1997 14:09:58 GMT
This question could start a whole treatise.  On the 8080 we patched CPM to
change loops which implemented operations like i*8 into ADD sequences,
doubling the speed.  On semi-obsolete processors like RS8000, a loop needs
to be unrolled to take advantage of Instruction Level Parallelism, and the
maximum unrolling which will pay off is limited by the number of registers
available and the amount of parallelism.  A further complication is that
what SGI calls unrolling is the number of loop iterations between
termination tests, not the total amount of unrolling.  More modern
processors which have out-of-order execution and hardware re-mapping of
registers are not as dependent on software unrolling.  So the unrolling is
best handled by a compiler which knows about the target machine.
Return to Top
Subject: Re: Optimization of functions
From: "Hans D. Mittelmann"
Date: Fri, 10 Jan 1997 07:55:28 -0700
Romualdo Ruotolo wrote:
> 
> Hallo,
> 
> I'm not a mathematician and I have to evaluate the minimum of a
> function f(x) (x is a vector here, but this is not very important, I
> think). My question is: does anyone know if it is better to minimise
> f(x) or to maximise 1/f(x) in order to improve the velocity of the
> numerical technique?
> 
> Thanks, Aldo Ruotolo.
Hi,
this has nothing to do with mathematics only with logic: Your question
cannot be answered because you did not specify f(x). Your f(x) is, of
course, 1/(1/f(x)). So it is the reciprocal of a function also.
Hans Mittelmann
Return to Top
Subject: Optimization of functions
From: Romualdo Ruotolo
Date: Fri, 10 Jan 1997 15:09:35 +0100
Hallo,
I'm not a mathematician and I have to evaluate the minimum of a
function f(x) (x is a vector here, but this is not very important, I
think). My question is: does anyone know if it is better to minimise
f(x) or to maximise 1/f(x) in order to improve the velocity of the
numerical technique? 
Thanks, Aldo Ruotolo.
Return to Top
Subject: Re: Q:galerkin method
From: "Michael E. Hosea"
Date: Fri, 10 Jan 1997 10:05:21 -0600
Delphine Wolfersberger wrote:
> I am trying to solve a nonlinear partial differentiel equations using
> the Galerkin method. The nonlinear PDE is of the form :
> 
> a*(d2E/dxdt)-b*E*E"+c*f(x,t)*E'+d*g(x,t)*E=0
> 
> where E", E' are the derivatives with x.
> 
> I have got problem solving this with the term a*(d2E/dxdt). When I use
> interpolation functions  which are linear or quadratic, I always found
> a matrix for this term which determinant is null. So the calculus
> result in a system which is not solvable.
It has been a long time since I looked at such things, but to what
precisely what matrix are you referring?  Don't you end up with a
*nonlinear* system to solve?
-- 
Mike Hosea (mhosea@ti.com)	Texas Instruments Inc.
phone	(972) 917-2958		PO Box 650311, MS 3908
fax	(972) 917-7103		Dallas, TX  75265
Return to Top
Subject: Asin
From: peter_rasmussen@fcgate.aapda.org.au (Peter Rasmussen)
Date: Fri, 10 Jan 1997 22:10:01 +1100
Hello
Does anyone know how to calculate ASIN or ACOS?
I am working in a program called Director.  It has a SIN and a COS command
but not ASIN or ACOS.
If anyone can shed light on this I would be most grateful.
Cheers
Peter
Return to Top
Subject: Re: How to find eigenvalues of "bad" matrix
From: hwolkowi@orion.math.uwaterloo.ca (Henry Wolkowicz)
Date: Fri, 10 Jan 1997 14:58:35 GMT
In article <32D39E85.41C6@damtp.cam.ac.uk>,
Tom Chou   wrote:
>Hello,
>
>I have an infinite, real, nonsymmetric square matrix 
>of which I want to find the lowest 10 or so eigenvalues. 
>I am taking larger and larger truncations and seeing if the eigenvalues
>converge. I am using balancing, then reduction to Hessenberg form, then 
>use a QR algorithm as described in Numerical Recipes. 
>
>However, for my particular matrix, I find that the eigenvalues don't
>quite converge at 40 X 40, where the algorithm uses too 
>many interations and exits (the lowest eigenval. changes by ~5% in going
>from 20 X 20 to 40 X 40). . Looking at the qualitative trends, I figure
>I need about a 400 X 400 truncation in the worst cases. 
>
>I think the problem is that the off diagonals get very large
>numerically. The matrix elements go as n^2*m^3, so numerically 
>get very large as one goes down the diagonal (~n^5) or, far away from
>the diagonals.
>
>
>My questions are:
>
>(1) Are there analytical bounds on how large a matrix I 
>need to take for a required accuracy in the lowest few
>eigenvalues? Where can I find theories about the convergence of
>the eigenvalues as the matrix is taken to be larger and larger?
>
>(2) What codes should I use? Can I simply reset the 
>number of iterations in the Numerical Recipes routines
>without catastrophic consequences? Are there other 
>routines/packages suited for this kind of matrix?
>
>(3)  Now suppose that each matrix element now depends on a parameter,
>s. I want to plot the eigenvalues as a function of s. Are there 
>theorems which can say when or when not any eigenvalues are degenerate?
>Or in particular, whether the lowest eigenvalue for one values of 
>s=s0 can become larger that say the 2nd largest at s=s0 
>at a different value s=s1? Is it possible to say that the lowest
>eigenval. is ALWAYS lower than the second lowest, for all s in 
>some range?
>
>This problem is related to band structure/floquet matrics.
>Any suggestions on where to look for the answers will be greatly 
>appreciated.
>
>Thx,
>
>Tom
>
It is not necessarily true that the eigenvalues will converge; you need
assumptions such as 'Hilbert Schmidt' operator.
There are several references: a classical reference is the book by
Kantorovitch and Akilov - Functional Analysis - see Chapter 14.
There are several theorems there that show when and how to guarantee the
convergence. Another book is the book by Krasnoselkii - Approximate
Solutions of Operator Equations.
-- 
||Henry Wolkowicz                |Fax:   (519) 725-5441
||University of Waterloo         |Tel:   (519) 888-4567, 1+ext. 5589
||Dept of Comb and Opt           |email:  henry@orion.math.uwaterloo.ca
||Waterloo, Ont. CANADA N2L 3G1  |URL: http://orion.math.uwaterloo.ca/~hwolkowi
Return to Top
Subject: Re: Optimization of functions
From: borchers@nmt.edu (Brian Borchers)
Date: 10 Jan 1997 17:50:01 GMT
Is it better to minimize f(x) or maximize 1/f(x)?  It depends on 
the particulars of f.
First, it's important that f(x)>0.  
Next, it's important to consider whether f(x) is convex, 1/f(x) is
concave, or both.  If f(x) is convex and 1/f(x) is not concave, 
then you're likely to be better off minimizing f(x) instead of 
maximizing 1/f(x).  For example, f(x)=e^(x^2)+0.0001 is convex, 
while 1/f(x) is *not* concave.
It's also important to consider how big the higher order derivatives
of f(x) are.  For example, suppose that Q is a positive definite
matrix, b is a vector, c is a scalar constant and f(x)=x'Qx+b'x+c.
Using Newton's method, you can find the minimum in one iteration,
because f is strictly quadratic.  If you try to maximize 1/f(x),
you'll find that Newton's method will take more iterations, because
1/f(x) isn't strictly quadratic.
Another issue is that depending on the function, minimizing f(x) or
maximizing 1/f(x) might be a much better conditioned problem. 
-- 
Brian Borchers                              borchers@nmt.edu
Department of Mathematics                   http://www.nmt.edu/~borchers/
New Mexico Tech                             Phone: 505-835-5813
Socorro, NM 87801                           FAX: 505-835-5366
Return to Top
Subject: fast hankel transform
From: david.jones@kcl.ac.uk (David Ll. Jones)
Date: 10 Jan 1997 17:06:33 GMT
Can anyone please give me a reference (book, sci paper etc) to the fast
hankel transform???
Can't find it anywhere though I know that it exists!
Return to Top
Subject: Re: Matrix operator implementation in C++
From: Steve
Date: 10 Jan 1997 14:35:37 -0000
"Stephen W. Hiemstra"  writes:
>I want to implement a simple addition operator in C++ (Borland C++ 5.01). 
>I was able to implement a += operator just fine, but the straight +
(I have a fairly good _simple_ matrix/vector package completed
 mail me if you want a look steve@maths.tcd.ie)
what you need are friend functions, like this
classs Matrix
{
	//stuff
public:
	friend Matrix operator + (const Matrix&a;, const Matrix&b;);
};
//defined like this: use the += operator to save some typing
//and to ensure consistency;
Matrix operator + (const Matrix&a;, const Matrix&b;)
{
	Matrix answer(a);
	answer += b;
	return answer;
}
Here you could make some improvements...
you dont need all the auxillary variables.
>CivMatrix& CivMatrix::operator += ( const CivMatrix& m )
>{
>	for( int i=k0;i  	{
>     	    pMatrix[i] += m.m_pMatrix[i];
>  	 }
>	return *this;
>}
Return to Top
Subject: Re: How to determine what values are small enough to be set to zero in SVD?
From: nmm1@cus.cam.ac.uk (Nick Maclaren)
Date: 10 Jan 1997 21:07:02 GMT
In article <5b65mi$9tc@oxywhite.interaccess.com>,
Billy Leung  wrote:
>
>In SVD solution of linear equation, one often has to zero out certain
>small values to proceed.  How do you actually determine a value is small
>enough in reference to a particular problem?
With some difficulty!  It clearly depends very much on the exact problem
(including the precise details of the matrix properties), but it also
depends on the algorithm used.
Some 25 years ago, I needed to get the square root of a positive,
semi-definite real matrix expressed in lower triangular form.  Studying
Wilkinson and Reinsch (or maybe just Wilkinson) indicated to me that
both Gaussian elimination and Cholesky decomposition could be used for
this, and that the former was slightly more resilient against singular
values.
In both cases, the best way to solve the problem was to add a diagonal
matrix with elements like K*order*max(element)*macheps, but K was about
twice as big for Cholesky.  I cannot now remember the exact criteria.
Since then, fancy SVD methods have been developed, and I believe that
some of them are more stable.  But the same principles apply.
Nick Maclaren,
University of Cambridge Computer Laboratory,
New Museums Site, Pembroke Street, Cambridge CB2 3QG, England.
Email:  nmm1@cam.ac.uk
Tel.:  +44 1223 334761    Fax:  +44 1223 334679
Return to Top
Subject: Re: Good book for Applications of Group Theory?
From: odonovan@physun.cis.mcmaster.ca (Chris O'Donovan)
Date: 10 Jan 1997 14:09:42 -0800
In article ,
Lou Pecora  wrote:
] At present I am using an old version of Tinkham's book on Group Theory and
] Quantum Mechanics...
I liked: Symmetry in the Solid State, R. S. Knox and A. Gold,
W. A. Benjamin, Inc., 1964, where on p. 41, when leading up to how the
irreps are projected out from a function, say that from the literature
the reader may have gained the impression that they ``are obtained by
luck, by educated guesses, or by black magic. The last is in fact the
correct method and its secret formula follows...''
Chris O'Donovan 
Return to Top
Subject: Re: Important Dif.-Equation
From: vmhjr@frii.com (Virgil Hancher)
Date: 10 Jan 1997 22:45:02 GMT
In article <32d0543f.2177474@news.toppoint.de>, nase@toppoint.de (M.
Graff) wrote:
> I need the solution of this vector-differential equation:
> (It is very urgent!!!)
> 
>   ..
>   r =-c*r/(|r|^3)
> 
> r is a vector and c a constant, positive real number.
>  ..
> (r  is the acceleration of course)
> 
> This is the important differential equation of the twobody-problem.
In the two body problem, the motion can be restricted to the plane
determined by  the "radius" vector r and the velocity vector dr/dt.
Within that plane, the motion is that of a conic section with one focus at
origin (r=0).
The polar equation is r = A/(1-e*cos(Theta - ThetaZero)),
   r is the SCALAR disance from origin,
   Theta is the angle measured from fixed direction in the plane,
   A,e and ThetaZero are constants determined by the initial conditions,
   e is the eccentricity of the conic section.
There is no general solution for r as a function of time, in closed form.
However closed form solutions of r as a function of time do exist for
special cases, such as circles or parabolas.
Return to Top
Subject: Re: Matrix operator implementation in C++
From: Joe Pekarek
Date: Fri, 10 Jan 1997 08:46:40 -0800
Return the matrix by value, not by reference as shown below. You should also have 
the copy constructor and the assignment operator (=) defined properly for your 
matrix class. The return by value will create a temporary object on the stack, 
which may not be very efficient for large matrices. For large matrices, use the 
+= operator, or don't use operator overloading and create a function that takes 
three arguments like AddMatrix(const Matrix& A, const Matrix& B, Matrix& C) where 
C=A+B, but a temporary matrix is not required.
 CivMatrix CivMatrix::operator + ( const CivMatrix& m )
 {
         CivMatrix g_iv( m_iRow, m_iCol );
         for( int i=k0;i 
> I want to implement a simple addition operator in C++ (Borland C++ 5.01).
> I was able to implement a += operator just fine, but the straight +
> operator poses a problem in returning a value that will not affect my
> existing matrix.  The problem comes in creating an appropriate temporary
> matrix to return the new matrix value.   As shown below, the obvious and
> erroneous answer (a local temporary) is inappropriate.  How to I handle a
> global or static return matrix properly (that is, avoiding a memory leak)?
> 
> Stephen
> 
> // Example of what not to do:
> 
> CivMatrix& CivMatrix::operator + ( const CivMatrix& m )
> {
>         CivMatrix g_iv( m_iRow, m_iCol );
>         for( int i=k0;i          {
>                 g_iv.SetNull();
>                 g_iv.m_pMatrix[i] = m_pMatrix[i]+m.m_pMatrix[i];
>         }
>         return g_iv;   // Opps, trying to return a local value...
> }
> 
> // This implement seems to work fine:
> 
> CivMatrix& CivMatrix::operator += ( const CivMatrix& m )
> {
>         CInterval iv;
>         for( int i=k0;i         {
>             iv.reset();
>             iv = m_pMatrix[i]+m.m_pMatrix[i];
>            m_pMatrix[i] = iv;
>          }
>         return *this;
> }
Return to Top
Subject: Re: Need help with math for splines
From: darenw@pipeline.com (Daren Scot Wilson)
Date: Fri, 10 Jan 1997 19:18:04 GMT
windson@transport.com wrote:
>I'd like to write a spline module in VB 4.0 and could use some help
>with the math. If someone could rattle off the equations, or point me
>to a good book or reference on the subject, I'd be most appreciative.
>Windson
Try "Computational Geometry: Curve and Surface Modelling" by 
Su Bu-Qing and Liu Ding-Yuan, published by Academic Press, 1989.
Find it on the university library shelf at call number QC447.S813,
where other good books should be near by.
Daren Wilson
darenw@pipeline.com
Return to Top
Subject: How to determine what values are small enough to be set to zero in SVD?
From: cml@oxywhite.interaccess.com (Billy Leung)
Date: 10 Jan 1997 13:35:46 -0600
In SVD solution of linear equation, one often has to zero out certain
small values to proceed.  How do you actually determine a value is small
enough in reference to a particular problem?
Thanks for your insight
Return to Top
Subject: Re: Matrix operator implementation in C++
From: Alexey Goldin
Date: Fri, 10 Jan 1997 20:06:03 GMT
Go to http://www.che.wisc.edu/octave and look at octave library of C++
matrix classes. May be you will be able just use this library, if not
it will giove you some useful insights. 
If you decide to rewrite it anyway, consider using Boehm garbage collector, 
it will probably work pretty well in this application.
Return to Top
Subject: More JakeWeb Challenges!!!
From: Jacob Martin
Date: Fri, 10 Jan 1997 20:29:03 +0000
Hi!
There are now more challenge problems located at my website. Good luck!
	Jake
-- 
Jacob Martin
jacobmartin@geocities.com or try jake@scientist.com
http://www.jmartin.home.ml.org
Return to Top
Subject: Thank You!
From: "Willieum J. Melton"
Date: Thu, 09 Jan 1997 17:14:19 -0800
My partner and I would like to thank all those who helped guide us to 
information about pi. If it wasn't for you, we may have never gotten this 
project done. The reference ideas that we got from you provided 
everything we needed and a little bit more. We presented it on Wednesday 
and I feel that it went over well in our class. Once again, THANK YOU!
Sincerely,
W. Jacarl Melton
Return to Top

Downloaded by WWW Programs
Byron Palmer