Agena v. 4.11.6 (23/4/2025, Alexander Walz) |
Readme/What's new |
4.11.6 Houma, April 23, 2025
- Instead of a procedure you can now also pass a string as the `ignore' option to `utils.readcsv`: If given a string, then all
lines in a file starting with this string will be ignored and skipped. For example, instead of
> utils.readcsv('sunspots.csv', ignore = << x -> x[1] = '#' >>)
to skip all lines starting with a hash, you can now write:
> utils.readcsv('sunspots.csv', ignore = '#')
- New `stats.card` returns the number of samples of any distribution, be it a table, sequence, register or double numeric array.
You can pass a Boolean function that determines which samples to count.
Also, by giving the `meanvar=true' option, the function - besides the count - also returns the arithmetic mean and variance,
all three in just one pass over the structure examined, saving runtime. You may also prompt the function to either return
the population or sample variance, and to alternatively use a special algorithm to avoid numeric overflow with very large
values, see the Primer & Reference for further information on that.
> stats.card([10, 20, 30, 40, 50]):
5
> stats.card([10, 20, 30, 40, 50], meanvar=true):
5 30 200
> stats.card([10, 20, 30, 40, 50], << x -> x > 20 >>):
3
- `stats.meanvar` can now be passed the following options:
- When given the `optimised=true' option, the function more strictly tries to avoid numeric overflow with very
large samples. The default is `false`.
- The `sample=true' option forces the function to return the sample variance instead of the population variance.
The default is `false`.
You now can also pass a multivariate Boolean selection function and put its second, third, etc. argument right after
the distribution.
- New `stats.meanqmdev` returns the arithmetic mean and the quadratic mean deviation of any distribution. Mathemetically,
the quadratic mean deviation is the population variance multiplied by the number of samples in a distribution. The
function by default prevents overflow with very large samples.
- `stats.skewness` and `stats.kurtosis`: you can now compute the sample skewness and sample kurtosis of a distribution
by passing any second non-null argument.
- The following new correlation functions have been added to the `stats` package:
stats.besselj Bessel J correlation function
stats.besselk Bessel K correlation function
stats.circular circular correlation function
stats.constant constant correlation function
stats.cubic cubic correlation function
stats.dampedcos damped cosine correlation function
stats.dampedsin damped sine correlation function
stats.exponential exponential correlation function
stats.gaussian Gaussian correlation function
stats.hole hole correlation function
stats.linear linear correlation function
stats.matern Matern correlation function
stats.penta pentaspherical correlation function
stats.power power correlation function
stats.ratquad rational quadratic correlation function
stats.spherical spherical correlation function
stats.white white noise correlation function
- New `cordic.cpow(a, b)` computes a^b using CORDIC arithmetic. `cordic` function names have finally been added to the
scheme files, too.
- Added files `data/airline.csv` and `data/sunspots.csv` to the installers, to play around with real-world time series
with the `stats` package. See the respective *.txt files for credits and explanation. |
Agena v. 3.16.1 (update2, 17/5/2024, Alexander Walz) |
Readme/What's new |
AGENA LIBRARY (CUMULATIVE) UPDATE
Improvements
------------
3.16.1 Library Update 2 Anson, May 17, 2024
- The precision of the factorial function fact left much to be desired with higher order integral arguments n, especially with
n > 101. This has been fixed.
- Removed non-existing territories from data/langreg.csv.
Installation
------------
This update can be used on all operating systems. You may need administrator rights to install this update.
Prerequisite
------------
Please have at least Agena 3.16.1 installed.
Solaris, UNIX, and Mac
----------------------
In Solaris, OpenSolaris, Linux, and Mac, the Agena installation can be found in /usr/agena. (This folder includes
at least the following subdirectories: doc, lib, schemes, and share). Please cd into this Agena main directory,
i.e. into /usr/agena.
Proceed with step `Unpack`.
Windows
-------
In Windows, your Agena installation might usually reside in
- <drive letter>:\Programs\Agena, or
- <drive letter>:\Program Files\Agena, or
- <drive letter>:\Program Files (x86)\Agena.
Please cd into this Agena subdirectory. Its contents is as follows:
13.03.2022 21:22 <DIR> .
13.03.2022 21:22 <DIR> ..
13.03.2022 21:22 <DIR> bin
13.03.2022 21:22 <DIR> doc
13.03.2022 21:22 <DIR> lib
13.03.2022 21:22 <DIR> share
13.03.2022 21:22 61.346 uninstall.exe
Proceed with step `Unpack`.
DOS
---
In DOS, locate the Agena directory that includes the licence and change.log files, and cd into this directory.
Please proceed with step `Unpack`.
Unpack
------
Copy this ZIP archive to your main Agena folder (see above) you just cd'ed into.
Please copy the lib/*.agn files in the lib folder of this ZIP archive to the lib folder of your Agena
installation, overwriting the original files.
If present, copy the updated documentation in the doc directory of this ZIP archive to the doc folder of your
Agena installation, overwriting the original files. If present, please also copy scheme(s) files included in
this update to the schemes folder.
Or just for short: in a shell, just issue the following statement after cd'ing:
unzip -o *update*
Really Updated ?
----------------
To check whether the update has been successfully installed: The start-up message should now include the word
`Update`, e.g.:
AGENA >> a.b.c Update n. (C) 2006-20xy http://agena.sourceforge.net.
That's it.
|
Agena v. 3.16.1 (11/5/2024, Alexander Walz) |
Readme/What's new |
3.16.1 Anson, May 11, 2024
- In the past, when a number was suffixed by the letter 'd', the number was multiplied by 12 (dozen notation). Now the number is assumed
to represent degrees and is automatically converted to radians through multiplication by Pi/180.
> 90d:
1.5707963267949
Likewise, if a number is suffixed by the letter 'r', it is assumed to be in radians and automatically converted to degrees through
multiplication by 180/Pi:
> 1.5707963267949r:
90
The suffix 'D' still represents dozens, so for example:
> 10D:
120
- New `math.todegrees` is the complement to `math.toradians` and converts radians to degrees:
> math.todegrees(Pi/2):
90
- `math.todecimal` did not work well - or unexpectedly - with negative components. This has been fixed by converting all values to positive
while preserving the sign in the result.
> math.todecimal(-1, 30, 45):
-1.5125
> math.todecimal(-1, 30, -45):
-1.5125
- Likewise, `math.toradians` did not work well with negative optional arguments. This has been fixed the same way as for `math.todecimal`.
- `math.dd` was 16 times slower than equivalent `math.todec`, because the former used string parsing and the latter a precise numeric
approach. So from now on, `math.dd` uses the same code as `math.todec`, the latter which has also now been deprecated. An alias
has been provided to ensure backward-compatibility.
- `math.splitdms` has been tuned by eight times, now using arithmetics instead of string processing. |
Commenti
Alexander Walz
Sab, 13/05/2017 - 20:06
Collegamento permanente
Hello,
Aggiungi un commento