⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 alan miller's fortran software.htm

📁 The module LSQ is for unconstrained linear least-squares fitting. It is based upon Applied Statisti
💻 HTM
📖 第 1 页 / 共 3 页
字号:
  href="http://users.bigpond.net.au/amiller/diehard/operm5d.ata">operm5d.ata</A>, 
  and you will need to generate a binary file containing just over 11 million 
  random 32-bit integers using the random number generator which you want to 
  test. I have provided a short note <A 
  href="http://users.bigpond.net.au/amiller/diehard/diehard.txt">diehard.txt</A> 
  and an example <A 
  href="http://users.bigpond.net.au/amiller/diehard/t_taus88.f90">t_taus88.f90</A> 
  showing how to generate the binary file using Pierre L'Ecuyer's TAUS88 random 
  number generator. 
  <LI><A 
  href="http://users.bigpond.net.au/amiller/sortchar.f90">sortchar.f90</A> Code 
  for sorting character strings. This was made available on the 
  comp.lang.fortran newsgroup. Author unknown. 
  <LI><A 
  href="http://users.bigpond.net.au/amiller/VanHuffel/total_ls.f90">total_ls.f90</A> 
  Van Huffel's Total Least Squares. It can be used for least-squares regressions 
  in which there are errors in both the X and Y variables, but the user must 
  have first scaled the variables so that the errors in all variables are all 
  the same. Can be used for ODR (orthogonal distance regression) after the same 
  scaling, otherwise use ODRPACK (a much larger package) from netlib, or Applied 
  Statistics algorithm AS 286. <A 
  href="http://users.bigpond.net.au/amiller/VanHuffel/test_tls.f90">test_tls.f90</A> 
  A test program for total_ls requiring <A 
  href="http://users.bigpond.net.au/amiller/VanHuffel/test_tls.dat">test_tls.dat</A>. 
  <A 
  href="http://users.bigpond.net.au/amiller/VanHuffel/ptls-doc.txt">ptls-doc.txt</A> 
  is Van Huffel's doc-file. 
  <LI><A 
  href="http://users.bigpond.net.au/amiller/K_smooth.zip">K_smooth.zip</A> Eva 
  Hermann's software for kernel smoothing, both local (lokern) and global 
  (glkern). You will need PKUNZIP or WinZip to extract the individual files. 
  <LI><A href="http://users.bigpond.net.au/amiller/ewma.f90">ewma.f90</A> Code 
  for updating exponentially-weighted moving averages, including updating a 
  residual sum of squares. 
  <LI><A 
  href="http://users.bigpond.net.au/amiller/adventur.zip">Adventur.zip</A> This 
  is a Fortran 90 version of the classic Adventure game. 
  <LI><A 
  href="http://users.bigpond.net.au/amiller/zhangjin.zip">zhangjin.zip</A> The 
  source code from `Computation of Special Functions' by Zhang &amp; Jin, 
  published by Wiley, 1996. As well as the `usual' functions such as gamma, 
  error function, Bessel and Airy functions, there are the confluent 
  hypergeometric, parabolic cylinder, Mathieu, spheroidal wave, and various 
  exponential integrals, etc. 
  <LI><A href="http://users.bigpond.net.au/amiller/dli.f90">dli.f90</A> Code 
  from the Slatec library for the logarithmic integral, Li(x), and the 
  exponential integrals, Ei(x) and E1(x). 
  <LI><A href="http://users.bigpond.net.au/amiller/dcosint.f90">dcosint.f90</A> 
  &amp; <A 
  href="http://users.bigpond.net.au/amiller/dsinint.f90">dsinint.f90</A> are for 
  evaluating the cosine, Ci(x), and sine, Si(x), integrals respectively. They 
  are translations of Numerical Algorithm NA 12. There are corresponding test 
  programs <A 
  href="http://users.bigpond.net.au/amiller/dcitest.f90">dcitest.f90</A> &amp; 
  <A href="http://users.bigpond.net.au/amiller/dsitest.f90">dsitest.f90</A> 
  <LI><A href="http://users.bigpond.net.au/amiller/r_zeta.f90">r_zeta.f90</A> 
  Riemann's zeta function for real argument. Adapted from DRIZET in the MATHLIB 
  library from CERN. 
  <LI><A href="http://users.bigpond.net.au/amiller/cincgam.f90">cincgam.f90</A> 
  The incomplete gamma function for complex arguments. 
  <LI><A href="http://users.bigpond.net.au/amiller/assndx.f90">assndx.f90</A> 
  The Munkres algorithm for solution of the assignment problem. Adapted from a 
  routine in the MATHLIB library from CERN. </LI></UL>
<LI><A href="http://users.bigpond.net.au/amiller/Easter.f90">Easter.f90</A> When 
is Easter in year XXXX? 
<LI><A href="http://users.bigpond.net.au/amiller/nnes.zip">nnes.zip</A> Code for 
the solution of simultaneous non-linear equations using a variety of algorithms. 
No documentation, but 3 example programs, one of which (MDR) contains 10 
different problems. Warning: This code contains the statement `Copyright 
R.S.Bain (1991)', but attempts to contact Rod Bain have been unsuccesful. This 
too is a zipped file. 
<LI><A href="http://users.bigpond.net.au/amiller/lanczos.f90">lanczos.f90</A> A 
simple algorithm for the logarithm of the gamma function. 
<LI><A href="http://users.bigpond.net.au/amiller/to_f90.f90">to_f90.f90</A> This 
program takes Fortran 77 code and converts it to make it look more like Fortran 
90. 
<LI><A href="http://users.bigpond.net.au/amiller/kaiser.f90">kaiser.f90</A> A 
simple routine to calculate the eigenvalues and eigenvectors of a symmetric 
positive definite, e.g. a covariance matrix. 
<LI><A href="http://users.bigpond.net.au/amiller/singlton.f90">singlton.f90</A> 
The classic Singleton multi-dimensional FFT algorithm for series whose length is 
not necessarily a power of 2. 
<LI><A href="http://users.bigpond.net.au/amiller/fft.f90">fft.f90</A> A simple 
Fast Fourier routine for the case in which the series length is a power of 2. 
<LI><A href="http://users.bigpond.net.au/amiller/apstat/chirp.f90">chirp.f90</A> 
The Chirp-Z algorithm for the FFT of a series of any length. 
<LI><A href="http://users.bigpond.net.au/amiller/fft235.f90">fft235.f90</A> Fast 
Fourier Transform for the case in which the series length is a multiple of some 
or all of the integers 2, 3 and 5 (e.g. length = 60 or 240). 
<LI><A href="http://users.bigpond.net.au/amiller/hartly2d.f90">hartly2d.f90</A> 
Hartley 2D Fast Fourier Transform. 
<LI><A name="Solve polynomials"><A 
href="http://users.bigpond.net.au/amiller/pzeros.f90">pzeros.f90</A></A> Solve 
polynomial equations using Aberth's method. Translated from a Fortran 77 
algorithm by Dario Bini published in Numerical Algorithms, vol.13 (1996). A 
short test program <A 
href="http://users.bigpond.net.au/amiller/poly20.f90">poly20.f90</A> is also 
available. Dario Bini has a package called MPSolve which does it in multiple 
precision. It can be downloaded by ftp from: 
http://fibonacci.dm.unipi.it/~bini/ric.html. 
<LI><A href="http://users.bigpond.net.au/amiller/envelope.f90">envelope.f90</A> 
A simple but efficient routine for finding 2D convex hulls, i.e. in finding the 
minimum polygon to enclose a set of points. 
<LI><A href="http://users.bigpond.net.au/amiller/median.f90">median.f90</A> 
Finds the median of a set of numbers using a truncated quicksort algorithm. 
<LI><A href="http://users.bigpond.net.au/amiller/hermite.f90">hermite.f90</A> 
Hermite integration, that is integration of f(x).p(x) from minus infinity to 
plus infinity, where f(x) is the user's function and p(x) = exp(-x^2). 
<LI><A href="http://users.bigpond.net.au/amiller/hh.f90">hh.f90</A> Half-Hermite 
integration, that is from zero to plus infinity. <A 
href="http://users.bigpond.net.au/amiller/hh_test.f90">hh_test.f90</A> is a test 
program which also serves as an illustration of how to use hh. See below for a 
program to calculate in quadruple precision the weights and abscissae. 
<LI><A href="http://users.bigpond.net.au/amiller/chi_sq.f90">chi_sq.f90</A> 
Chi-squared distribution function. Requires as239.f90 and lanczos.f90. 
<LI><A href="http://users.bigpond.net.au/amiller/hyperg.f90">hyperg.f90</A> 
Calculate hypergeometric probabilities. 
<LI><A href="http://users.bigpond.net.au/amiller/rhohat.f90">rhohat.f90</A> 
Maximum likelihood estimation of the shape parameter of the gamma (Erlang) 
distribution, including calculation of the derivatives of the log-gamma 
function. 
<LI><A href="http://users.bigpond.net.au/amiller/fnprod.f90">fnprod.f90</A> 
Computes the distribution function for the product of two correlated normal 
variates using the algorithm of Meeker &amp; Escobar. Needs <A 
href="http://users.bigpond.net.au/amiller/constant.f90">constant.f90</A> and <A 
href="http://users.bigpond.net.au/amiller/qxgs.f90">qxgs.f90</A>. 
<LI><A href="http://users.bigpond.net.au/amiller/twodqd.f90">twodqd.f90</A> A 
translation of Kahaner &amp; Rechard's 1984 program for bivariate integration 
over triangular regions, including a test program. 
<LI><A href="http://users.bigpond.net.au/amiller/simann.f90">simann.f90</A> is a 
module and test program for simulated annealing based upon the algorithm of 
Corana.
<HR>
 
<LI><A href="http://users.bigpond.net.au/amiller/ives.f90">ives.f90</A> is a 
routine for generating all combinations of n objects. 
<LI><A href="http://users.bigpond.net.au/amiller/mace.f90">mace.f90</A> is an 
F90 version of Jerry Friedman's program to estimate multiple optimal 
transformations for regression and correlation by alternating conditional 
expectation estimates. 
<CENTER>
<H2>NAS FortranPlus<BR></H2></CENTER><A 
href="http://users.bigpond.net.au/amiller/NAS.html">Software for NAS 
FortranPlus</A> This exploits the 10-byte REAL data type which is supported by 
this compiler. At the moment, it only contains a special version of my quadruple 
precision package which gives about 38 decimal digit representation of quadruple 
precision numbers. N.B. It is extremely unlikely that this will give correct 
answers with any other compiler (e.g. Salford) which supports 10-byte REALs. 
<HR>

<CENTER>
<H2>Code for Imagine1's free F compiler</H2></CENTER>
<CENTER>
<H2>Windows version ONLY</H2></CENTER>
<CENTER><A href="http://users.bigpond.net.au/amiller/F.html">Click 
here</A></CENTER>
<HR>

<CENTER>
<H2>Some linear least-squares examples and tests<BR></H2></CENTER><BR><FONT 
size=2>
<HR>

<UL>
  <LI><A 
  href="http://users.bigpond.net.au/amiller/lsq/fit_poly.f90">fit_poly.f90</A> 
  Fit a polynomial to a set of (x,y) data. 
  <LI><A 
  href="http://users.bigpond.net.au/amiller/lsq/quadsurf.f90">quadsurf.f90</A> 
  Fit a quadratic surface to a set of (x,y,z) data, i.e. fit:<BR>Z = b0 + b10.X 
  + b01.Y + b20.X^2 + b11.X.Y + b02.Y^2 <BR>There is a module <A 
  href="http://users.bigpond.net.au/amiller/lsq/ridge.f90">ridge.f90</A> for 
  ridge regression / regularization. It uses the output from the module lsq to 
  form the singular value decomposition (SVD) and offers a choice of 4 different 
  methods of regularization, or the user can input their own vector to add to 
  the diagonal of the X'X-matrix. 
  <LI><A 
  href="http://users.bigpond.net.au/amiller/lsq/wtd_quin.f90">wtd_quin.f90</A> 
  This is a program to fit a quintic polynomial with exponential weighting of 
  past values. It was developed for someone who had reason to believe that his 
  process was well approximated locally by a quintic, but wanted to give 
  progressively less weight to old observations. The slope and 2nd derivative 
  (acceleration) of the smoothing polynomial are output after each new case is 
  read. This is suitable for real time applications. It demonstrates the use of 
  the least-squares package's updating algorithm. 
  <LI><A 
  href="http://users.bigpond.net.au/amiller/lsq/spline5.f90">spline5.f90</A> 
  This program fits quintic splines with user-chosen but evenly-spaced knots. 
  The slope and 2nd derivative (acceleration) of the smoothing polynomial are 
  output, but only after all of the data have been read. The smoothed fit and 
  derivatives at any point are based upon the data from both before and after 
  the point. 
  <HR>

  <P>
  <H2>
  <CENTER>Some other useful web sites:</CENTER></H2>
  <P>Try the <A href="http://www.fortran.com/fortran">Fortran Market</A> for 
  general information on Fortran compilers, tutorials, books and access to some 
  sources of Fortran code, Gary Scott's <A 
  href="http://www.fortranlib.com/">Fortran Library</A> web site. <BR>The 
  Fortran90 FAQ (frequently asked questions) can be obtained from: <A 
  href="http://www.ifremer.fr/ditigo/molagnon/fortran90/engfaq.html">F90FAQ</A>. 
  <BR>For an extensive set of routines for sorting and ranking real numbers see 
  <A href="http://www.fortran-2000.com/">OrderPack</A>. <BR><A 
  href="http://www.nag.co.uk/nagware/Examples.asp">NAG F90 Software 
  Repository</A> is a source of useful Fortran 90 code. <BR>The ACM collection 
  of <A href="http://www.netlib.org/toms/index.html">TOMS algorithms</A> is a 
  source of refereed code, mainly in Fortran, for a wide range of numerical 
  calculations. <BR>A collection of functions and subroutines covering a wide 
  area of mathematical <BR>John Monahan's site contains the software from his 
  book `Numerical Methods of Statistics'. It covers a very similar are to this 
  web site, and is at: <A 
  href="http://www4.stat.ncsu.edu/~monahan/aug00/toc.htm">Monahan's web 
  site</A>. operations can be found at <A 
  href="http://perso.wanadoo.fr/jean-pierre.moreau/fortran.html">Jean-Pierre 
  Moreau's web site</A>. <BR>For a guide to available mathematical software, 
  refer to <A href="http://gams.nist.gov/">GAMS</A>, and for the numerical 
  analysis FAQ <A 
  href="http://www.mathcom.com/corpdir/techinfo.mdir/scifaq/">numafaq</A>. 
  <BR>If you are interested in object-oriented programming in Fortran, you 
  should see <A 
  href="http://www.cs.rpi.edu/~szymansk/oof90.html">oof90.html</A>. <BR>For 
  statistical software in a variety of languages try <A 
  href="http://lib.stat.cmu.edu/">statlib</A>. For distribution functions, 
  random number generation and other statistical programs, try <A 
  href="http://odin.mdacc.tmc.edu/pub/source">cdflib/ranlib</A>. <BR>For 
  optimization, particularly constrained optimization, see <A 
  href="http://plato.la.asu.edu/guide.html">the Optimization Decision Tree</A>, 
  or Arnold Neumaier's <A 
  href="http://www.mat.univie.ac.at/~neum/glopt.html">Global Optimization</A> 
  web site. The latter also contains many general links to mathematical and 
  statistical software. <BR>For multivariate normal integrals, and for multiple 
  integration in general, look at <A 
  href="http://www.math.wsu.edu/math/faculty/genz/homepage">Alan Genz's</A> home 
  page. <BR>Michel Olagnon's ORDERPACK is for sorting and ranking. It can be 
  found at: <A href="http://www.fortran-2000.com/">ORDERPACK</A>. <BR>Australian 
  Fortran users will find the web page of <A 
  href="http://www.labyrinth.net.au/~ctrans">Computer Transition Systems</A> 
  useful. (This company distributes Lahey, Salford, Edinburgh Portable 
  Compilers, Digital Visual Fortran and other compilers in Australia.) <BR>To 
  download Lahey's cheap Fortran 90 compiler click on <A 
  href="http://www.lahey.com/">ELF90</A>. </P><BR>There is an interpreter for a 
  subset of Fortran 90 available from: <A href="http://www.hicest.com/">Georg 
  Petrich's interpreter</A>. I have not tried it myself, so comments would be 
  welcome. It can be downloaded freely, but I understand it is a shareware 
  product. <BR>For a wide range of code for the FFT, in several computer 
  languages, see: <A href="http://www.fftw.org/links.html">The FFT Home 
  Page</A>. and: <A href="http://www.jjj.de/fft/fftpage.html">Another FFT Home 
  Page</A>. 
  <P>
  <H2><B>email:</B> <A 
  href="mailto:amiller@bigpond.net.au">mailto:amiller@bigpond.net.au</A><BR>
  <P></P>
  <HR>

  <CENTER><I>Updated 4 February 
2004</I></CENTER></H2></LI></UL></FONT></LI></FONT></FONT></FONT></FONT></FONT></FONT></FONT></FONT></FONT></FONT></FONT></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -