![]() |
![]() |
Back |
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
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
I was just wondering. How much should you unroll? Do the same rules apply for integer math? Thanks in advance, jasonpReturn to Top
In articleReturn to Top, 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.
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
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 94043Return to TopCopyright 1996
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 HollowayReturn to Top
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;iReturn 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> snapReturn to Topwrites: >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
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 articleReturn to Top, 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.
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 PaloschiReturn to Topwrites: |> 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
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 MittelmannReturn 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 75265Return 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 PeterReturn 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 ChouReturn to Topwrote: >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
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-5366Return 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"Return to Topwrites: >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; >}
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 LeungReturn to Topwrote: > >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
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 articleReturn to Top, 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
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;iReturn to Top> 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; > }
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.comReturn 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 insightReturn 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.orgReturn 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 MeltonReturn to Top
Downloaded by WWW Programs
Byron Palmer