Index: embedded/md/index.md
==================================================================
--- embedded/md/index.md
+++ embedded/md/index.md
@@ -531,11 +531,11 @@
|markdown|[doctools](tcllib/files/modules/doctools/doctools\.md) · [doctools::idx](tcllib/files/modules/doctools/docidx\.md) · [doctools::toc](tcllib/files/modules/doctools/doctoc\.md)|
|markup|[docidx\_intro](tcllib/files/modules/doctools/docidx\_intro\.md) · [docidx\_lang\_cmdref](tcllib/files/modules/doctools/docidx\_lang\_cmdref\.md) · [docidx\_lang\_faq](tcllib/files/modules/doctools/docidx\_lang\_faq\.md) · [docidx\_lang\_intro](tcllib/files/modules/doctools/docidx\_lang\_intro\.md) · [docidx\_lang\_syntax](tcllib/files/modules/doctools/docidx\_lang\_syntax\.md) · [docidx\_plugin\_apiref](tcllib/files/modules/doctools/docidx\_plugin\_apiref\.md) · [doctoc\_intro](tcllib/files/modules/doctools/doctoc\_intro\.md) · [doctoc\_lang\_cmdref](tcllib/files/modules/doctools/doctoc\_lang\_cmdref\.md) · [doctoc\_lang\_faq](tcllib/files/modules/doctools/doctoc\_lang\_faq\.md) · [doctoc\_lang\_intro](tcllib/files/modules/doctools/doctoc\_lang\_intro\.md) · [doctoc\_lang\_syntax](tcllib/files/modules/doctools/doctoc\_lang\_syntax\.md) · [doctoc\_plugin\_apiref](tcllib/files/modules/doctools/doctoc\_plugin\_apiref\.md) · [doctools](tcllib/files/modules/doctools/doctools\.md) · [doctools2idx\_introduction](tcllib/files/modules/doctools2idx/idx\_introduction\.md) · [doctools2toc\_introduction](tcllib/files/modules/doctools2toc/toc\_introduction\.md) · [doctools::idx](tcllib/files/modules/doctools/docidx\.md) · [doctools::idx](tcllib/files/modules/doctools2idx/idx\_container\.md) · [doctools::idx::export](tcllib/files/modules/doctools2idx/idx\_export\.md) · [doctools::idx::import](tcllib/files/modules/doctools2idx/idx\_import\.md) · [doctools::toc](tcllib/files/modules/doctools2toc/toc\_container\.md) · [doctools::toc](tcllib/files/modules/doctools/doctoc\.md) · [doctools::toc::export](tcllib/files/modules/doctools2toc/toc\_export\.md) · [doctools::toc::import](tcllib/files/modules/doctools2toc/toc\_import\.md) · [doctools\_intro](tcllib/files/modules/doctools/doctools\_intro\.md) · [doctools\_lang\_cmdref](tcllib/files/modules/doctools/doctools\_lang\_cmdref\.md) · [doctools\_lang\_faq](tcllib/files/modules/doctools/doctools\_lang\_faq\.md) · [doctools\_lang\_intro](tcllib/files/modules/doctools/doctools\_lang\_intro\.md) · [doctools\_lang\_syntax](tcllib/files/modules/doctools/doctools\_lang\_syntax\.md) · [doctools\_plugin\_apiref](tcllib/files/modules/doctools/doctools\_plugin\_apiref\.md) · [dtplite](tcllib/files/modules/dtplite/pkg\_dtplite\.md) · [dtplite](tcllib/files/apps/dtplite\.md) · [mpexpand](tcllib/files/modules/doctools/mpexpand\.md) · [tcldocstrip](tcllib/files/apps/tcldocstrip\.md)|
|MasterCard|[valtype::creditcard::mastercard](tcllib/files/modules/valtype/cc\_mastercard\.md)|
|matching|[grammar::me\_intro](tcllib/files/modules/grammar\_me/me\_intro\.md) · [grammar::peg::interp](tcllib/files/modules/grammar\_peg/peg\_interp\.md) · [pt](tcllib/files/apps/pt\.md) · [pt::ast](tcllib/files/modules/pt/pt\_astree\.md) · [pt::cparam::configuration::critcl](tcllib/files/modules/pt/pt\_cparam\_config\_critcl\.md) · [pt::cparam::configuration::tea](tcllib/files/modules/pt/pt\_cparam\_config\_tea\.md) · [pt::json\_language](tcllib/files/modules/pt/pt\_json\_language\.md) · [pt::param](tcllib/files/modules/pt/pt\_param\.md) · [pt::pe](tcllib/files/modules/pt/pt\_pexpression\.md) · [pt::pe::op](tcllib/files/modules/pt/pt\_pexpr\_op\.md) · [pt::peg](tcllib/files/modules/pt/pt\_pegrammar\.md) · [pt::peg::container](tcllib/files/modules/pt/pt\_peg\_container\.md) · [pt::peg::container::peg](tcllib/files/modules/pt/pt\_peg\_container\_peg\.md) · [pt::peg::export](tcllib/files/modules/pt/pt\_peg\_export\.md) · [pt::peg::export::container](tcllib/files/modules/pt/pt\_peg\_export\_container\.md) · [pt::peg::export::json](tcllib/files/modules/pt/pt\_peg\_export\_json\.md) · [pt::peg::export::peg](tcllib/files/modules/pt/pt\_peg\_export\_peg\.md) · [pt::peg::from::container](tcllib/files/modules/pt/pt\_peg\_from\_container\.md) · [pt::peg::from::json](tcllib/files/modules/pt/pt\_peg\_from\_json\.md) · [pt::peg::from::peg](tcllib/files/modules/pt/pt\_peg\_from\_peg\.md) · [pt::peg::import](tcllib/files/modules/pt/pt\_peg\_import\.md) · [pt::peg::import::container](tcllib/files/modules/pt/pt\_peg\_import\_container\.md) · [pt::peg::import::json](tcllib/files/modules/pt/pt\_peg\_import\_json\.md) · [pt::peg::import::peg](tcllib/files/modules/pt/pt\_peg\_import\_peg\.md) · [pt::peg::interp](tcllib/files/modules/pt/pt\_peg\_interp\.md) · [pt::peg::to::container](tcllib/files/modules/pt/pt\_peg\_to\_container\.md) · [pt::peg::to::cparam](tcllib/files/modules/pt/pt\_peg\_to\_cparam\.md) · [pt::peg::to::json](tcllib/files/modules/pt/pt\_peg\_to\_json\.md) · [pt::peg::to::param](tcllib/files/modules/pt/pt\_peg\_to\_param\.md) · [pt::peg::to::peg](tcllib/files/modules/pt/pt\_peg\_to\_peg\.md) · [pt::peg::to::tclparam](tcllib/files/modules/pt/pt\_peg\_to\_tclparam\.md) · [pt::peg\_language](tcllib/files/modules/pt/pt\_peg\_language\.md) · [pt::pegrammar](tcllib/files/modules/pt/pt\_peg\_introduction\.md) · [pt::pgen](tcllib/files/modules/pt/pt\_pgen\.md) · [pt::rde](tcllib/files/modules/pt/pt\_rdengine\.md) · [pt::tclparam::configuration::nx](tcllib/files/modules/pt/pt\_tclparam\_config\_nx\.md) · [pt::tclparam::configuration::snit](tcllib/files/modules/pt/pt\_tclparam\_config\_snit\.md) · [pt::tclparam::configuration::tcloo](tcllib/files/modules/pt/pt\_tclparam\_config\_tcloo\.md) · [pt::util](tcllib/files/modules/pt/pt\_util\.md) · [pt\_export\_api](tcllib/files/modules/pt/pt\_to\_api\.md) · [pt\_import\_api](tcllib/files/modules/pt/pt\_from\_api\.md) · [pt\_introduction](tcllib/files/modules/pt/pt\_introduction\.md) · [pt\_parse\_peg](tcllib/files/modules/pt/pt\_parse\_peg\.md) · [pt\_parser\_api](tcllib/files/modules/pt/pt\_parser\_api\.md) · [pt\_peg\_op](tcllib/files/modules/pt/pt\_peg\_op\.md) · [struct::graph::op](tcllib/files/modules/struct/graphops\.md)|
|math|[math](tcllib/files/modules/math/math\.md) · [math::bigfloat](tcllib/files/modules/math/bigfloat\.md) · [math::bignum](tcllib/files/modules/math/bignum\.md) · [math::calculus](tcllib/files/modules/math/calculus\.md) · [math::complexnumbers](tcllib/files/modules/math/qcomplex\.md) · [math::constants](tcllib/files/modules/math/constants\.md) · [math::decimal](tcllib/files/modules/math/decimal\.md) · [math::fuzzy](tcllib/files/modules/math/fuzzy\.md) · [math::geometry](tcllib/files/modules/math/math\_geometry\.md) · [math::interpolate](tcllib/files/modules/math/interpolate\.md) · [math::linearalgebra](tcllib/files/modules/math/linalg\.md) · [math::optimize](tcllib/files/modules/math/optimize\.md) · [math::PCA](tcllib/files/modules/math/pca\.md) · [math::polynomials](tcllib/files/modules/math/polynomials\.md) · [math::rationalfunctions](tcllib/files/modules/math/rational\_funcs\.md) · [math::special](tcllib/files/modules/math/special\.md) · [math::trig](tcllib/files/modules/math/trig\.md) · [simulation::annealing](tcllib/files/modules/simulation/annealing\.md) · [simulation::montecarlo](tcllib/files/modules/simulation/montecarlo\.md) · [simulation::random](tcllib/files/modules/simulation/simulation\_random\.md)|
-|mathematics|[math::fourier](tcllib/files/modules/math/fourier\.md) · [math::statistics](tcllib/files/modules/math/statistics\.md)|
+|mathematics|[math::fourier](tcllib/files/modules/math/fourier\.md) · [math::quasirandom](tcllib/files/modules/math/quasirandom\.md) · [math::statistics](tcllib/files/modules/math/statistics\.md)|
|matrices|[math::linearalgebra](tcllib/files/modules/math/linalg\.md)|
|matrix|[csv](tcllib/files/modules/csv/csv\.md) · [math::linearalgebra](tcllib/files/modules/math/linalg\.md) · [report](tcllib/files/modules/report/report\.md) · [struct::matrix](tcllib/files/modules/struct/matrix\.md) · [struct::matrix\_v1](tcllib/files/modules/struct/matrix1\.md) · [struct::queue](tcllib/files/modules/struct/queue\.md) · [struct::stack](tcllib/files/modules/struct/stack\.md)|
|max cut|[struct::graph::op](tcllib/files/modules/struct/graphops\.md)|
|maximum|[math::optimize](tcllib/files/modules/math/optimize\.md)|
|maximum flow|[struct::graph::op](tcllib/files/modules/struct/graphops\.md)|
@@ -685,10 +685,11 @@
#### Keywords: Q
|||
|---|---|
+|quasi\-random|[math::quasirandom](tcllib/files/modules/math/quasirandom\.md)|
|queue|[csv](tcllib/files/modules/csv/csv\.md) · [htmlparse](tcllib/files/modules/htmlparse/htmlparse\.md) · [struct::stack](tcllib/files/modules/struct/stack\.md) · [transfer::copy::queue](tcllib/files/modules/transfer/tqueue\.md)|
|quoting|[page\_util\_quote](tcllib/files/modules/page/page\_util\_quote\.md)|
#### Keywords: R
ADDED embedded/md/tcllib/files/modules/math/quasirandom.md
Index: embedded/md/tcllib/files/modules/math/quasirandom.md
==================================================================
--- /dev/null
+++ embedded/md/tcllib/files/modules/math/quasirandom.md
@@ -0,0 +1,167 @@
+
+[//000000001]: # (math::quasirandom \- Tcl Math Library)
+[//000000002]: # (Generated from file 'quasirandom\.man' by tcllib/doctools with format 'markdown')
+[//000000003]: # (math::quasirandom\(n\) 1 tcllib "Tcl Math Library")
+
+
[ Main Table Of Contents | Table Of Contents | Keyword Index | Categories | Modules | Applications ]
+
+# NAME
+
+math::quasirandom \- Quasi\-random points for integration and Monte Carlo type
+methods
+
+# Table Of Contents
+
+ - [Table Of Contents](#toc)
+
+ - [Synopsis](#synopsis)
+
+ - [Description](#section1)
+
+ - [COMMANDS](#section2)
+
+ - [TODO](#section3)
+
+ - [References](#section4)
+
+ - [Keywords](#keywords)
+
+ - [Category](#category)
+
+# SYNOPSIS
+
+package require Tcl 8\.5
+package require TclOO
+package require math::quasirandom 1
+
+[__::math::quasirandom::qrpoint create__ *NAME* *DIM* ?ARGS?](#1)
+[__gen next__](#2)
+[__gen set\-start__ *index*](#3)
+[__gen set\-evaluations__ *number*](#4)
+[__gen integral__ *func* *minmax* *args*](#5)
+
+# DESCRIPTION
+
+In many applications pseudo\-random numbers and pseudo\-random points in a
+\(limited\) sample space play an important role\. For instance in any type of Monte
+Carlo simulation\. Pseudo\-random numbers, however, may be too random and as a
+consequence a large number of data points is required to reduce the error or
+fluctuation in the results to the desired value\.
+
+Quasi\-random numbers can be used as an alternative: instead of "completely"
+arbitrary points, points are generated that are diverse enough to cover the
+entire sample space in a more or less uniform way\. As a consequence convergence
+to the limit can be much faster, when such quasi\-random numbers are well\-chosen\.
+
+The package defines a *[class](\.\./\.\./\.\./\.\./index\.md\#class)* "qrpoint" that
+creates a command to generate quasi\-random points in 1, 2 or more dimensions\.
+The command can either generate separate points, so that they can be used in a
+user\-defined algorithm or use these points to calculate integrals of functions
+defined over 1, 2 or more dimensions\. It also holds several other common
+algorithms\. \(NOTE: these are not implemented yet\)
+
+One particular characteristic of the generators is that there are no tuning
+parameters involved, which makes the use particularly simple\.
+
+# COMMANDS
+
+A quasi\-random point generator is created using the *qrpoint* class:
+
+ - __::math::quasirandom::qrpoint create__ *NAME* *DIM* ?ARGS?
+
+ This command takes the following arguments:
+
+ * string *NAME*
+
+ The name of the command to be created \(alternatively: the *new*
+ subcommand will generate a unique name\)
+
+ * integer/string *DIM*
+
+ The number of dimensions or one of: "circle", "disk", "sphere" or "ball"
+
+ * strings *ARGS*
+
+ Zero or more key\-value pairs\. The supported options are:
+
+ + *\-start index*: The index for the next point to be generated
+ \(default: 1\)
+
+ + *\-evaluations number*: The number of evaluations to be used by
+ default \(default: 100\)
+
+The points that are returned lie in the hyperblock \[0,1\[^n \(n the number of
+dimensions\) or on the unit circle, within the unit disk, on the unit sphere or
+within the unit ball\.
+
+Each generator supports the following subcommands:
+
+ - __gen next__
+
+ Return the coordinates of the next quasi\-random point
+
+ - __gen set\-start__ *index*
+
+ Reset the index for the next quasi\-random point\. This is useful to control
+ which list of points is returned\. Returns the new or the current value, if
+ no value is given\.
+
+ - __gen set\-evaluations__ *number*
+
+ Reset the default number of evaluations in compound algorithms\. Note that
+ the actual number is the smallest 4\-fold larger or equal to the given
+ number\. \(The 4\-fold plays a role in the detailed integration routine\.\)
+
+ - __gen integral__ *func* *minmax* *args*
+
+ Calculate the integral of the given function over the block \(or the circle,
+ sphere etc\.\)
+
+ * string *func*
+
+ The name of the function to be integrated
+
+ * list *minmax*
+
+ List of pairs of minimum and maximum coordinates\. This can be used to
+ map the quasi\-random coordinates to the desired hyper\-block\.
+
+ If the space is a circle, disk etc\. then this argument should be a
+ single value, the radius\. The circle, disk, etc\. is centred at the
+ origin\. If this is not what is required, then a coordinate
+ transformation should be made within the function\.
+
+ * strings *args*
+
+ Zero or more key\-value pairs\. The following options are supported:
+
+ + *\-evaluations number*: The number of evaluations to be used\. If
+ not specified use the default of the generator object\.
+
+# TODO
+
+Implement other algorithms and variants
+
+Implement more unit tests\.
+
+Comparison to pseudo\-random numbers for integration\.
+
+# References
+
+Various algorithms exist for generating quasi\-random numbers\. The generators
+created in this package are based on:
+[http://extremelearning\.com\.au/unreasonable\-effectiveness\-of\-quasirandom\-sequences/](http://extremelearning\.com\.au/unreasonable\-effectiveness\-of\-quasirandom\-sequences/)
+
+# KEYWORDS
+
+[mathematics](\.\./\.\./\.\./\.\./index\.md\#mathematics),
+[quasi\-random](\.\./\.\./\.\./\.\./index\.md\#quasi\_random)
+
+# CATEGORY
+
+Mathematics
Index: embedded/md/tcllib/toc.md
==================================================================
--- embedded/md/tcllib/toc.md
+++ embedded/md/tcllib/toc.md
@@ -372,10 +372,12 @@
- [math::optimize](tcllib/files/modules/math/optimize\.md) Optimisation routines
- [math::PCA](tcllib/files/modules/math/pca\.md) Package for Principal Component Analysis
- [math::polynomials](tcllib/files/modules/math/polynomials\.md) Polynomial functions
+
+ - [math::quasirandom](tcllib/files/modules/math/quasirandom\.md) Quasi\-random points for integration and Monte Carlo type methods
- [math::rationalfunctions](tcllib/files/modules/math/rational\_funcs\.md) Polynomial functions
- [math::roman](tcllib/files/modules/math/roman\.md) Tools for creating and manipulating roman numerals
Index: embedded/md/toc.md
==================================================================
--- embedded/md/toc.md
+++ embedded/md/toc.md
@@ -401,10 +401,12 @@
+ [math::PCA](tcllib/files/modules/math/pca\.md) Package for Principal Component Analysis
+ [math::polynomials](tcllib/files/modules/math/polynomials\.md) Polynomial functions
+ + [math::quasirandom](tcllib/files/modules/math/quasirandom\.md) Quasi\-random points for integration and Monte Carlo type methods
+
+ [math::rationalfunctions](tcllib/files/modules/math/rational\_funcs\.md) Polynomial functions
+ [math::roman](tcllib/files/modules/math/roman\.md) Tools for creating and manipulating roman numerals
+ [math::special](tcllib/files/modules/math/special\.md) Special mathematical functions
@@ -1452,10 +1454,12 @@
- [math::optimize](tcllib/files/modules/math/optimize\.md) Optimisation routines
- [math::PCA](tcllib/files/modules/math/pca\.md) Package for Principal Component Analysis
- [math::polynomials](tcllib/files/modules/math/polynomials\.md) Polynomial functions
+
+ - [math::quasirandom](tcllib/files/modules/math/quasirandom\.md) Quasi\-random points for integration and Monte Carlo type methods
- [math::rationalfunctions](tcllib/files/modules/math/rational\_funcs\.md) Polynomial functions
- [math::roman](tcllib/files/modules/math/roman\.md) Tools for creating and manipulating roman numerals
Index: embedded/md/toc0.md
==================================================================
--- embedded/md/toc0.md
+++ embedded/md/toc0.md
@@ -400,10 +400,12 @@
+ [math::optimize](tcllib/files/modules/math/optimize\.md) Optimisation routines
+ [math::PCA](tcllib/files/modules/math/pca\.md) Package for Principal Component Analysis
+ [math::polynomials](tcllib/files/modules/math/polynomials\.md) Polynomial functions
+
+ + [math::quasirandom](tcllib/files/modules/math/quasirandom\.md) Quasi\-random points for integration and Monte Carlo type methods
+ [math::rationalfunctions](tcllib/files/modules/math/rational\_funcs\.md) Polynomial functions
+ [math::roman](tcllib/files/modules/math/roman\.md) Tools for creating and manipulating roman numerals
Index: embedded/md/toc1.md
==================================================================
--- embedded/md/toc1.md
+++ embedded/md/toc1.md
@@ -514,10 +514,12 @@
+ [math::optimize](tcllib/files/modules/math/optimize\.md) Optimisation routines
+ [math::PCA](tcllib/files/modules/math/pca\.md) Package for Principal Component Analysis
+ [math::polynomials](tcllib/files/modules/math/polynomials\.md) Polynomial functions
+
+ + [math::quasirandom](tcllib/files/modules/math/quasirandom\.md) Quasi\-random points for integration and Monte Carlo type methods
+ [math::rationalfunctions](tcllib/files/modules/math/rational\_funcs\.md) Polynomial functions
+ [math::roman](tcllib/files/modules/math/roman\.md) Tools for creating and manipulating roman numerals
ADDED idoc/man/files/modules/math/quasirandom.n
Index: idoc/man/files/modules/math/quasirandom.n
==================================================================
--- /dev/null
+++ idoc/man/files/modules/math/quasirandom.n
@@ -0,0 +1,394 @@
+'\"
+'\" Generated from file 'quasirandom\&.man' by tcllib/doctools with format 'nroff'
+'\"
+.TH "math::quasirandom" n 1 tcllib "Tcl Math Library"
+.\" The -*- nroff -*- definitions below are for supplemental macros used
+.\" in Tcl/Tk manual entries.
+.\"
+.\" .AP type name in/out ?indent?
+.\" Start paragraph describing an argument to a library procedure.
+.\" type is type of argument (int, etc.), in/out is either "in", "out",
+.\" or "in/out" to describe whether procedure reads or modifies arg,
+.\" and indent is equivalent to second arg of .IP (shouldn't ever be
+.\" needed; use .AS below instead)
+.\"
+.\" .AS ?type? ?name?
+.\" Give maximum sizes of arguments for setting tab stops. Type and
+.\" name are examples of largest possible arguments that will be passed
+.\" to .AP later. If args are omitted, default tab stops are used.
+.\"
+.\" .BS
+.\" Start box enclosure. From here until next .BE, everything will be
+.\" enclosed in one large box.
+.\"
+.\" .BE
+.\" End of box enclosure.
+.\"
+.\" .CS
+.\" Begin code excerpt.
+.\"
+.\" .CE
+.\" End code excerpt.
+.\"
+.\" .VS ?version? ?br?
+.\" Begin vertical sidebar, for use in marking newly-changed parts
+.\" of man pages. The first argument is ignored and used for recording
+.\" the version when the .VS was added, so that the sidebars can be
+.\" found and removed when they reach a certain age. If another argument
+.\" is present, then a line break is forced before starting the sidebar.
+.\"
+.\" .VE
+.\" End of vertical sidebar.
+.\"
+.\" .DS
+.\" Begin an indented unfilled display.
+.\"
+.\" .DE
+.\" End of indented unfilled display.
+.\"
+.\" .SO ?manpage?
+.\" Start of list of standard options for a Tk widget. The manpage
+.\" argument defines where to look up the standard options; if
+.\" omitted, defaults to "options". The options follow on successive
+.\" lines, in three columns separated by tabs.
+.\"
+.\" .SE
+.\" End of list of standard options for a Tk widget.
+.\"
+.\" .OP cmdName dbName dbClass
+.\" Start of description of a specific option. cmdName gives the
+.\" option's name as specified in the class command, dbName gives
+.\" the option's name in the option database, and dbClass gives
+.\" the option's class in the option database.
+.\"
+.\" .UL arg1 arg2
+.\" Print arg1 underlined, then print arg2 normally.
+.\"
+.\" .QW arg1 ?arg2?
+.\" Print arg1 in quotes, then arg2 normally (for trailing punctuation).
+.\"
+.\" .PQ arg1 ?arg2?
+.\" Print an open parenthesis, arg1 in quotes, then arg2 normally
+.\" (for trailing punctuation) and then a closing parenthesis.
+.\"
+.\" # Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
+.if t .wh -1.3i ^B
+.nr ^l \n(.l
+.ad b
+.\" # Start an argument description
+.de AP
+.ie !"\\$4"" .TP \\$4
+.el \{\
+. ie !"\\$2"" .TP \\n()Cu
+. el .TP 15
+.\}
+.ta \\n()Au \\n()Bu
+.ie !"\\$3"" \{\
+\&\\$1 \\fI\\$2\\fP (\\$3)
+.\".b
+.\}
+.el \{\
+.br
+.ie !"\\$2"" \{\
+\&\\$1 \\fI\\$2\\fP
+.\}
+.el \{\
+\&\\fI\\$1\\fP
+.\}
+.\}
+..
+.\" # define tabbing values for .AP
+.de AS
+.nr )A 10n
+.if !"\\$1"" .nr )A \\w'\\$1'u+3n
+.nr )B \\n()Au+15n
+.\"
+.if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
+.nr )C \\n()Bu+\\w'(in/out)'u+2n
+..
+.AS Tcl_Interp Tcl_CreateInterp in/out
+.\" # BS - start boxed text
+.\" # ^y = starting y location
+.\" # ^b = 1
+.de BS
+.br
+.mk ^y
+.nr ^b 1u
+.if n .nf
+.if n .ti 0
+.if n \l'\\n(.lu\(ul'
+.if n .fi
+..
+.\" # BE - end boxed text (draw box now)
+.de BE
+.nf
+.ti 0
+.mk ^t
+.ie n \l'\\n(^lu\(ul'
+.el \{\
+.\" Draw four-sided box normally, but don't draw top of
+.\" box if the box started on an earlier page.
+.ie !\\n(^b-1 \{\
+\h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
+.\}
+.el \}\
+\h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
+.\}
+.\}
+.fi
+.br
+.nr ^b 0
+..
+.\" # VS - start vertical sidebar
+.\" # ^Y = starting y location
+.\" # ^v = 1 (for troff; for nroff this doesn't matter)
+.de VS
+.if !"\\$2"" .br
+.mk ^Y
+.ie n 'mc \s12\(br\s0
+.el .nr ^v 1u
+..
+.\" # VE - end of vertical sidebar
+.de VE
+.ie n 'mc
+.el \{\
+.ev 2
+.nf
+.ti 0
+.mk ^t
+\h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
+.sp -1
+.fi
+.ev
+.\}
+.nr ^v 0
+..
+.\" # Special macro to handle page bottom: finish off current
+.\" # box/sidebar if in box/sidebar mode, then invoked standard
+.\" # page bottom macro.
+.de ^B
+.ev 2
+'ti 0
+'nf
+.mk ^t
+.if \\n(^b \{\
+.\" Draw three-sided box if this is the box's first page,
+.\" draw two sides but no top otherwise.
+.ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
+.el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
+.\}
+.if \\n(^v \{\
+.nr ^x \\n(^tu+1v-\\n(^Yu
+\kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
+.\}
+.bp
+'fi
+.ev
+.if \\n(^b \{\
+.mk ^y
+.nr ^b 2
+.\}
+.if \\n(^v \{\
+.mk ^Y
+.\}
+..
+.\" # DS - begin display
+.de DS
+.RS
+.nf
+.sp
+..
+.\" # DE - end display
+.de DE
+.fi
+.RE
+.sp
+..
+.\" # SO - start of list of standard options
+.de SO
+'ie '\\$1'' .ds So \\fBoptions\\fR
+'el .ds So \\fB\\$1\\fR
+.SH "STANDARD OPTIONS"
+.LP
+.nf
+.ta 5.5c 11c
+.ft B
+..
+.\" # SE - end of list of standard options
+.de SE
+.fi
+.ft R
+.LP
+See the \\*(So manual entry for details on the standard options.
+..
+.\" # OP - start of full description for a single option
+.de OP
+.LP
+.nf
+.ta 4c
+Command-Line Name: \\fB\\$1\\fR
+Database Name: \\fB\\$2\\fR
+Database Class: \\fB\\$3\\fR
+.fi
+.IP
+..
+.\" # CS - begin code excerpt
+.de CS
+.RS
+.nf
+.ta .25i .5i .75i 1i
+..
+.\" # CE - end code excerpt
+.de CE
+.fi
+.RE
+..
+.\" # UL - underline word
+.de UL
+\\$1\l'|0\(ul'\\$2
+..
+.\" # QW - apply quotation marks to word
+.de QW
+.ie '\\*(lq'"' ``\\$1''\\$2
+.\"" fix emacs highlighting
+.el \\*(lq\\$1\\*(rq\\$2
+..
+.\" # PQ - apply parens and quotation marks to word
+.de PQ
+.ie '\\*(lq'"' (``\\$1''\\$2)\\$3
+.\"" fix emacs highlighting
+.el (\\*(lq\\$1\\*(rq\\$2)\\$3
+..
+.\" # QR - quoted range
+.de QR
+.ie '\\*(lq'"' ``\\$1''\\-``\\$2''\\$3
+.\"" fix emacs highlighting
+.el \\*(lq\\$1\\*(rq\\-\\*(lq\\$2\\*(rq\\$3
+..
+.\" # MT - "empty" string
+.de MT
+.QW ""
+..
+.BS
+.SH NAME
+math::quasirandom \- Quasi-random points for integration and Monte Carlo type methods
+.SH SYNOPSIS
+package require \fBTcl 8\&.5\fR
+.sp
+package require \fBTclOO \fR
+.sp
+package require \fBmath::quasirandom 1\fR
+.sp
+\fB::math::quasirandom::qrpoint create\fR \fINAME\fR \fIDIM\fR ?ARGS?
+.sp
+\fBgen next\fR
+.sp
+\fBgen set-start\fR \fIindex\fR
+.sp
+\fBgen set-evaluations\fR \fInumber\fR
+.sp
+\fBgen integral\fR \fIfunc\fR \fIminmax\fR \fIargs\fR
+.sp
+.BE
+.SH DESCRIPTION
+.PP
+In many applications pseudo-random numbers and pseudo-random points in a (limited)
+sample space play an important role\&. For instance in any type of Monte Carlo simulation\&.
+Pseudo-random numbers, however, may be too random and as a consequence a large
+number of data points is required to reduce the error or fluctuation in the results
+to the desired value\&.
+.PP
+Quasi-random numbers can be used as an alternative: instead of "completely" arbitrary
+points, points are generated that are diverse enough to cover the entire sample space
+in a more or less uniform way\&. As a consequence convergence to the limit can be
+much faster, when such quasi-random numbers are well-chosen\&.
+.PP
+The package defines a \fIclass\fR "qrpoint" that creates a command to generate
+quasi-random points in 1, 2 or more dimensions\&. The command can either generate
+separate points, so that they can be used in a user-defined algorithm or use these
+points to calculate integrals of functions defined over 1, 2 or more dimensions\&.
+It also holds several other common algorithms\&. (NOTE: these are not implemented yet)
+.PP
+One particular characteristic of the generators is that there are no tuning parameters
+involved, which makes the use particularly simple\&.
+.SH COMMANDS
+A quasi-random point generator is created using the \fIqrpoint\fR class:
+.TP
+\fB::math::quasirandom::qrpoint create\fR \fINAME\fR \fIDIM\fR ?ARGS?
+This command takes the following arguments:
+.RS
+.TP
+string \fINAME\fR
+The name of the command to be created (alternatively: the \fInew\fR subcommand
+will generate a unique name)
+.TP
+integer/string \fIDIM\fR
+The number of dimensions or one of: "circle", "disk", "sphere" or "ball"
+.TP
+strings \fIARGS\fR
+Zero or more key-value pairs\&. The supported options are:
+.RS
+.IP \(bu
+\fI-start index\fR: The index for the next point to be generated (default: 1)
+.IP \(bu
+\fI-evaluations number\fR: The number of evaluations to be used by default (default: 100)
+.RE
+.RE
+.PP
+The points that are returned lie in the hyperblock [0,1[^n (n the number of dimensions)
+or on the unit circle, within the unit disk, on the unit sphere or within the unit ball\&.
+.PP
+Each generator supports the following subcommands:
+.TP
+\fBgen next\fR
+Return the coordinates of the next quasi-random point
+.sp
+.TP
+\fBgen set-start\fR \fIindex\fR
+Reset the index for the next quasi-random point\&. This is useful to control which list of points is returned\&.
+Returns the new or the current value, if no value is given\&.
+.sp
+.TP
+\fBgen set-evaluations\fR \fInumber\fR
+Reset the default number of evaluations in compound algorithms\&. Note that the actual number is the
+smallest 4-fold larger or equal to the given number\&. (The 4-fold plays a role in the detailed integration
+routine\&.)
+.sp
+.TP
+\fBgen integral\fR \fIfunc\fR \fIminmax\fR \fIargs\fR
+Calculate the integral of the given function over the block (or the circle, sphere etc\&.)
+.RS
+.TP
+string \fIfunc\fR
+The name of the function to be integrated
+.TP
+list \fIminmax\fR
+List of pairs of minimum and maximum coordinates\&. This can be used to
+map the quasi-random coordinates to the desired hyper-block\&.
+.sp
+If the space is a circle, disk etc\&. then this argument should be a single value, the radius\&.
+The circle, disk, etc\&. is centred at the origin\&. If this is not what is required, then a coordinate
+transformation should be made within the function\&.
+.TP
+strings \fIargs\fR
+Zero or more key-value pairs\&. The following options are supported:
+.RS
+.IP \(bu
+\fI-evaluations number\fR: The number of evaluations to be used\&. If not specified use the
+default of the generator object\&.
+.RE
+.RE
+.PP
+.SH TODO
+Implement other algorithms and variants
+.PP
+Implement more unit tests\&.
+.PP
+Comparison to pseudo-random numbers for integration\&.
+.SH REFERENCES
+Various algorithms exist for generating quasi-random numbers\&. The generators created in this package are based on:
+\fIhttp://extremelearning\&.com\&.au/unreasonable-effectiveness-of-quasirandom-sequences/\fR
+.SH KEYWORDS
+mathematics, quasi-random
+.SH CATEGORY
+Mathematics
Index: idoc/man/index.n
==================================================================
--- idoc/man/index.n
+++ idoc/man/index.n
@@ -6605,10 +6605,13 @@
mathematics
.RS
.TP
\fBfiles/modules/math/fourier\&.n\fR
math::fourier
+.TP
+\fBfiles/modules/math/quasirandom\&.n\fR
+math::quasirandom
.TP
\fBfiles/modules/math/statistics\&.n\fR
math::statistics
.RE
matrices
@@ -8412,10 +8415,16 @@
pt_parser_api
.TP
\fBfiles/modules/pt/pt_peg_op\&.n\fR
pt_peg_op
.RE
+quasi-random
+.RS
+.TP
+\fBfiles/modules/math/quasirandom\&.n\fR
+math::quasirandom
+.RE
queue
.RS
.TP
\fBfiles/modules/csv/csv\&.n\fR
csv
Index: idoc/man/toc.n
==================================================================
--- idoc/man/toc.n
+++ idoc/man/toc.n
@@ -829,10 +829,13 @@
\fIfiles/modules/math/pca\&.n\fR: Package for Principal Component Analysis
.TP
\fBmath::polynomials\fR
\fIfiles/modules/math/polynomials\&.n\fR: Polynomial functions
.TP
+\fBmath::quasirandom\fR
+\fIfiles/modules/math/quasirandom\&.n\fR: Quasi-random points for integration and Monte Carlo type methods
+.TP
\fBmath::rationalfunctions\fR
\fIfiles/modules/math/rational_funcs\&.n\fR: Polynomial functions
.TP
\fBmath::roman\fR
\fIfiles/modules/math/roman\&.n\fR: Tools for creating and manipulating roman numerals
Index: idoc/www/index.html
==================================================================
--- idoc/www/index.html
+++ idoc/www/index.html
@@ -2273,11 +2273,11 @@
math · math::bigfloat · math::bignum · math::calculus · math::complexnumbers · math::constants · math::decimal · math::fuzzy · math::geometry · math::interpolate · math::linearalgebra · math::optimize · math::PCA · math::polynomials · math::rationalfunctions · math::special · math::trig · simulation::annealing · simulation::montecarlo · simulation::random
mathematics |
- math::fourier · math::statistics
+ math::fourier · math::quasirandom · math::statistics
|
matrices |
math::linearalgebra
@@ -2933,1433 +2933,1438 @@
|
+ quasi-random |
+
+ math::quasirandom
+ |
+
queue |
csv · htmlparse · struct::stack · transfer::copy::queue
|
-
+
quoting |
page_util_quote
|
-
+
radians |
math::constants · units
|
-
+
radiobutton |
html
|
-
+
radius |
struct::graph::op
|
-
+
random |
tcl::chan::random · tcl::randomseed
|
-
+
random numbers |
simulation::random
|
-
+
rational functions |
math::rationalfunctions
|
-
+
raw |
term::ansi::ctrl::unix
|
-
+
rc4 |
rc4
|
-
+
RCS |
rcs
|
-
+
RCS patch |
rcs
|
-
+
read |
coroutine · coroutine::auto
|
-
+
reading |
bench::in
|
-
+
receiver |
term::receive · term::receive::bind · transfer::receiver
|
-
+
reconnect |
nameserv::auto
|
-
+
record |
struct::queue · struct::record
|
-
+
recursive descent |
grammar::me_intro · grammar::peg · grammar::peg::interp · pt · pt::ast · pt::cparam::configuration::critcl · pt::cparam::configuration::tea · pt::json_language · pt::param · pt::pe · pt::pe::op · pt::peg · pt::peg::container · pt::peg::container::peg · pt::peg::export · pt::peg::export::container · pt::peg::export::json · pt::peg::export::peg · pt::peg::from::container · pt::peg::from::json · pt::peg::from::peg · pt::peg::import · pt::peg::import::container · pt::peg::import::json · pt::peg::import::peg · pt::peg::interp · pt::peg::to::container · pt::peg::to::cparam · pt::peg::to::json · pt::peg::to::param · pt::peg::to::peg · pt::peg::to::tclparam · pt::peg_language · pt::pegrammar · pt::pgen · pt::rde · pt::tclparam::configuration::nx · pt::tclparam::configuration::snit · pt::tclparam::configuration::tcloo · pt::util · pt_export_api · pt_import_api · pt_introduction · pt_parse_peg · pt_parser_api · pt_peg_op
|
-
+
reduce |
generator · struct::list
|
-
+
reference |
doctools::idx · doctools::idx::export · doctools::idx::import · doctools::toc · doctools::toc::export · doctools::toc::import
|
-
+
reflected channel |
tcl::chan::cat · tcl::chan::core · tcl::chan::events · tcl::chan::facade · tcl::chan::fifo · tcl::chan::fifo2 · tcl::chan::halfpipe · tcl::chan::memchan · tcl::chan::null · tcl::chan::nullzero · tcl::chan::random · tcl::chan::std · tcl::chan::string · tcl::chan::textwindow · tcl::chan::variable · tcl::chan::zero · tcl::randomseed · tcl::transform::adler32 · tcl::transform::base64 · tcl::transform::core · tcl::transform::counter · tcl::transform::crc32 · tcl::transform::hex · tcl::transform::identity · tcl::transform::limitsize · tcl::transform::observe · tcl::transform::otp · tcl::transform::rot · tcl::transform::spacer · tcl::transform::zlib
|
-
+
regex |
string::token
|
-
+
regular expression |
grammar::fa · grammar::fa::dacceptor · grammar::fa::dexec · grammar::fa::op · textutil · textutil::split · textutil::trim
|
-
+
regular grammar |
grammar::fa · grammar::fa::dacceptor · grammar::fa::dexec · grammar::fa::op
|
-
+
regular languages |
grammar::fa · grammar::fa::dacceptor · grammar::fa::dexec · grammar::fa::op
|
-
+
remote communication |
comm · comm_wire
|
-
+
remote execution |
comm · comm_wire
|
-
+
remove |
fileutil::multi · fileutil::multi::op
|
-
+
repeating |
struct::list
|
-
+
repetition |
struct::list · textutil::repeat
|
-
+
report |
report
|
-
+
reshuffle |
struct::list
|
-
+
residual graph |
struct::graph::op
|
-
+
resolver |
dns
|
-
+
resource management |
try
|
-
+
restore |
nameserv::auto
|
-
+
return |
throw
|
-
+
reverse |
struct::list
|
-
+
rfc 821 |
mime · smtp · smtpd
|
-
+
rfc 822 |
mime · pop3d::dbox · smtp
|
-
+
rfc 868 |
ntp_time
|
-
+
rfc 959 |
ftp · ftp::geturl · ftpd
|
-
+
rfc 977 |
nntp
|
-
+
rfc 1034 |
dns
|
-
+
rfc 1035 |
dns
|
-
+
rfc 1036 |
nntp
|
-
+
rfc 1320 |
md4 · md5 · ripemd128 · ripemd160
|
-
+
rfc 1321 |
md4 · md5 · ripemd128 · ripemd160
|
-
+
rfc 1413 |
ident
|
-
+
rfc 1630 |
uri
|
-
+
rfc 1886 |
dns
|
-
+
rfc 1939 |
pop3 · pop3d
|
-
+
rfc 2030 |
ntp_time
|
-
+
rfc 2045 |
mime
|
-
+
rfc 2046 |
mime
|
-
+
rfc 2049 |
mime
|
-
+
rfc 2104 |
md4 · md5 · ripemd128 · ripemd160 · sha1 · sha256
|
-
+
rfc 2141 |
uri_urn
|
-
+
rfc 2251 |
ldap · ldapx
|
-
+
rfc 2255 |
uri
|
-
+
rfc 2289 |
otp
|
-
+
rfc 2396 |
uri
|
-
+
rfc 2554 |
smtp
|
-
+
RFC 2718 |
oauth
|
-
+
rfc 2821 |
smtp · smtpd
|
-
+
rfc 2849 |
ldapx
|
-
+
rfc 3207 |
smtp
|
-
+
rfc 3513 |
tcllib_ip
|
-
+
rfc 3986 |
uri
|
-
+
rfc 4511 |
ldap
|
-
+
RFC 5849 |
oauth
|
-
+
rfc 6455 |
websocket
|
-
+
rfc 7858 |
dns
|
-
+
rfc3501 |
imap4
|
-
+
rfc3548 |
base32 · base32::hex
|
-
+
right outer join |
struct::list
|
-
+
RIPEMD |
ripemd128 · ripemd160
|
-
+
roman numeral |
math::roman
|
-
+
roots |
math::calculus
|
-
+
rot |
tcl::transform::rot
|
-
+
rot13 |
tcl::transform::rot
|
-
+
rounding |
math::fuzzy
|
-
+
rows |
term::ansi::ctrl::unix
|
-
+
rpc |
comm · comm_wire
|
-
+
rsa |
pki
|
-
+
running |
grammar::fa::dexec
|
-
+
s3 |
S3
|
-
+
SASL |
SASL · SASL::NTLM · SASL::SCRAM · SASL::XGoogleToken
|
-
+
scanl |
generator
|
-
+
SCCS |
rcs
|
-
+
SCRAM |
SASL::SCRAM
|
-
+
secure |
comm · pop3 · pop3d · transfer::connect · transfer::receiver · transfer::transmitter
|
-
+
security |
aes · blowfish · cksum · crc16 · crc32 · des · md4 · md5 · md5crypt · otp · pki · rc4 · ripemd128 · ripemd160 · sha1 · sha256 · sum · tclDES · tclDESjr
|
-
+
seed |
tcl::randomseed
|
-
+
selectionbox |
javascript
|
-
+
semantic markup |
docidx_intro · docidx_lang_cmdref · docidx_lang_faq · docidx_lang_intro · docidx_lang_syntax · docidx_plugin_apiref · doctoc_intro · doctoc_lang_cmdref · doctoc_lang_faq · doctoc_lang_intro · doctoc_lang_syntax · doctoc_plugin_apiref · doctools2idx_introduction · doctools2toc_introduction · doctools_intro · doctools_lang_cmdref · doctools_lang_faq · doctools_lang_intro · doctools_lang_syntax · doctools_plugin_apiref
|
-
+
send |
comm
|
-
+
serialization |
bee · doctools::idx::export::docidx · doctools::idx::export::html · doctools::idx::export::json · doctools::idx::export::nroff · doctools::idx::export::text · doctools::idx::export::wiki · doctools::idx::structure · doctools::toc::export::doctoc · doctools::toc::export::html · doctools::toc::export::json · doctools::toc::export::nroff · doctools::toc::export::text · doctools::toc::export::wiki · doctools::toc::structure · pt::peg::export::container · pt::peg::export::json · pt::peg::export::peg · pt::peg::from::json · pt::peg::from::peg · pt::peg::import::json · pt::peg::import::peg · pt::peg::to::container · pt::peg::to::cparam · pt::peg::to::json · pt::peg::to::param · pt::peg::to::peg · pt::peg::to::tclparam · struct::graph · struct::tree
|
-
+
server |
map::geocode::nominatim · map::slippy::fetcher · nameserv::common · nameserv::server · nns_intro · nnsd · udpcluster
|
-
+
service |
logger
|
-
+
services |
ftpd · smtpd · tool
|
-
+
set |
struct::queue · struct::set
|
-
+
sha1 |
sha1
|
-
+
sha256 |
sha256
|
-
+
shell |
string::token::shell
|
-
+
shortest path |
struct::graph::op
|
-
+
shuffle |
struct::list
|
-
+
simulated annealing |
simulation::annealing
|
-
+
simulation |
simulation::random
|
-
+
singleton |
oo::util · oo::util
|
-
+
size limit |
tcl::transform::limitsize
|
-
+
skiplist |
struct::queue · struct::skiplist
|
-
+
slippy |
map::slippy · map::slippy::cache · map::slippy::fetcher
|
-
+
smtp |
mime · smtp · smtpd
|
-
+
smtpd |
smtpd
|
-
+
Snit |
snit
|
-
+
snit |
deleg_method · interp
|
-
+
SNTP |
ntp_time
|
-
+
socket |
comm · comm_wire · smtpd
|
-
+
soundex |
soundex
|
-
+
source |
docstrip · docstrip_util · tcldocstrip
|
-
+
spacing |
tcl::transform::spacer
|
-
+
spatial interpolation |
math::interpolate
|
-
+
special functions |
math::special
|
-
+
specification |
bench_lang_spec
|
-
+
speed |
profiler
|
-
+
split |
textutil::split
|
-
+
squared graph |
struct::graph::op
|
-
+
ssl |
comm · imap4 · pop3 · pop3d · transfer::connect · transfer::receiver · transfer::transmitter
|
-
+
stack |
struct::queue
|
-
+
standard io |
tcl::chan::std
|
-
+
state |
grammar::fa · grammar::fa::dacceptor · grammar::fa::dexec · grammar::fa::op · grammar::peg · grammar::peg::interp · pt · pt::ast · pt::cparam::configuration::critcl · pt::cparam::configuration::tea · pt::json_language · pt::param · pt::pe · pt::pe::op · pt::peg · pt::peg::container · pt::peg::container::peg · pt::peg::export · pt::peg::export::container · pt::peg::export::json · pt::peg::export::peg · pt::peg::from::container · pt::peg::from::json · pt::peg::from::peg · pt::peg::import · pt::peg::import::container · pt::peg::import::json · pt::peg::import::peg · pt::peg::interp · pt::peg::to::container · pt::peg::to::cparam · pt::peg::to::json · pt::peg::to::param · pt::peg::to::peg · pt::peg::to::tclparam · pt::peg_language · pt::pegrammar · pt::pgen · pt::rde · pt::tclparam::configuration::nx · pt::tclparam::configuration::snit · pt::tclparam::configuration::tcloo · pt::util · pt_export_api · pt_import_api · pt_introduction · pt_parse_peg · pt_parser_api · pt_peg_op
|
-
+
state (de)serialization |
namespacex
|
-
+
statistical distribution |
simulation::random
|
-
+
statistics |
counter · math · math::PCA · math::statistics
|
-
+
stdin |
tcl::chan::std
|
-
+
stdout |
tcl::chan::std
|
-
+
stochastic modelling |
simulation::montecarlo
|
-
+
stream cipher |
rc4
|
-
+
stream copy |
tcl::transform::observe
|
-
+
string |
string::token · string::token::shell · textutil · textutil::adjust · textutil::expander · textutil::repeat · textutil::split · textutil::string · textutil::tabify · textutil::trim
|
-
+
stringprep |
stringprep · stringprep::data · unicode::data
|
-
+
strongly connected component |
struct::graph::op
|
-
+
struct |
struct::pool · struct::record
|
-
+
structure |
control
|
-
+
structured queries |
treeql
|
-
+
style |
doctools::html::cssdefaults
|
-
+
subcommand |
tepam · tepam::procedure
|
-
+
subgraph |
struct::graph · struct::graph::op
|
-
+
subject |
hook
|
-
+
submitbutton |
javascript
|
-
+
subscriber |
hook
|
-
+
subsequence |
struct::list
|
-
+
subst |
doctools::tcl::parse
|
-
+
sum |
sum
|
-
+
swapping |
struct::list
|
-
+
symmetric difference |
struct::set
|
-
+
synchronous |
cache::async
|
-
+
syntax tree |
grammar::me::util
|
-
+
table |
doctools::toc · doctools::toc::export · doctools::toc::import · html · report
|
-
+
table of contents |
doctoc_intro · doctoc_plugin_apiref · doctools2toc_introduction · doctools::toc · doctools::toc · doctools::toc::export · doctools::toc::export::doctoc · doctools::toc::export::html · doctools::toc::export::json · doctools::toc::export::nroff · doctools::toc::export::text · doctools::toc::export::wiki · doctools::toc::import · doctools::toc::import::doctoc · doctools::toc::import::json
|
-
+
tabstops |
textutil::tabify
|
-
+
tallying |
counter
|
-
+
tape archive |
tar
|
-
+
tar |
tar
|
-
+
tcl |
math::bigfloat · math::bignum · math::decimal · math::PCA
|
-
+
Tcl module |
docstrip_util
|
-
+
Tcl syntax |
doctools::tcl::parse
|
-
+
tcler's wiki |
doctools::idx · doctools::idx::export · doctools::toc · doctools::toc::export
|
-
+
tcllib |
csv
|
-
+
TclOO |
oo::util · oo::util · oometa · tool · tool · tool::dict_ensemble
|
-
+
TCLPARAM |
pt::peg::to::tclparam
|
-
+
TDPL |
grammar::peg · grammar::peg::interp · pt · pt::ast · pt::cparam::configuration::critcl · pt::cparam::configuration::tea · pt::json_language · pt::param · pt::pe · pt::pe::op · pt::peg · pt::peg::container · pt::peg::container::peg · pt::peg::export · pt::peg::export::container · pt::peg::export::json · pt::peg::export::peg · pt::peg::from::container · pt::peg::from::json · pt::peg::from::peg · pt::peg::import · pt::peg::import::container · pt::peg::import::json · pt::peg::import::peg · pt::peg::interp · pt::peg::to::container · pt::peg::to::cparam · pt::peg::to::json · pt::peg::to::param · pt::peg::to::peg · pt::peg::to::tclparam · pt::peg_language · pt::pegrammar · pt::pgen · pt::rde · pt::tclparam::configuration::nx · pt::tclparam::configuration::snit · pt::tclparam::configuration::tcloo · pt::util · pt_export_api · pt_import_api · pt_introduction · pt_parse_peg · pt_parser_api · pt_peg_op
|
-
+
temp file |
fileutil
|
-
+
template processing |
textutil::expander
|
-
+
terminal |
term · term::ansi::code · term::ansi::code::attr · term::ansi::code::ctrl · term::ansi::code::macros · term::ansi::ctrl::unix · term::ansi::send · term::interact::menu · term::interact::pager · term::receive · term::receive::bind · term::send
|
-
+
test |
fileutil
|
-
+
Testing |
valtype::common · valtype::creditcard::amex · valtype::creditcard::discover · valtype::creditcard::mastercard · valtype::creditcard::visa · valtype::gs1::ean13 · valtype::iban · valtype::imei · valtype::isbn · valtype::luhn · valtype::luhn5 · valtype::usnpi · valtype::verhoeff
|
-
+
testing |
bench · bench::in · bench::out::csv · bench::out::text · bench_intro · bench_lang_intro · bench_lang_spec
|
-
+
TeX |
textutil · textutil::adjust
|
-
+
text |
bench::in · bench::out::text · doctools::idx · doctools::idx::export · doctools::toc · doctools::toc::export
|
-
+
text comparison |
soundex
|
-
+
text conversion |
rcs
|
-
+
text differences |
rcs
|
-
+
text display |
term::interact::menu · term::interact::pager
|
-
+
text expansion |
textutil::expander
|
-
+
text likeness |
soundex
|
-
+
text processing |
bibtex · huddle · page · page_intro · page_pluginmgr · page_util_flow · page_util_norm_lemon · page_util_norm_peg · page_util_peg · page_util_quote · yaml
|
-
+
text widget |
tcl::chan::textwindow
|
-
+
threads |
coroutine · coroutine::auto
|
-
+
throw |
throw
|
-
+
thumbnail |
jpeg
|
-
+
tie |
tie · tie
|
-
+
tif |
tiff
|
-
+
tiff |
tiff
|
-
+
tile |
map::slippy::cache · map::slippy::fetcher
|
-
+
time |
ntp_time
|
-
+
timestamp |
png
|
-
+
timestamps |
debug::timestamp
|
-
+
tip 219 |
tcl::chan::cat · tcl::chan::core · tcl::chan::events · tcl::chan::facade · tcl::chan::fifo · tcl::chan::fifo2 · tcl::chan::halfpipe · tcl::chan::memchan · tcl::chan::null · tcl::chan::nullzero · tcl::chan::random · tcl::chan::std · tcl::chan::string · tcl::chan::textwindow · tcl::chan::variable · tcl::chan::zero · tcl::randomseed · tcl::transform::core
|
-
+
tip 230 |
tcl::transform::adler32 · tcl::transform::base64 · tcl::transform::counter · tcl::transform::crc32 · tcl::transform::hex · tcl::transform::identity · tcl::transform::limitsize · tcl::transform::observe · tcl::transform::otp · tcl::transform::rot · tcl::transform::spacer · tcl::transform::zlib
|
-
+
tip 234 |
tcl::transform::zlib
|
-
+
tip 317 |
tcl::transform::base64
|
-
+
Tk |
tcl::chan::textwindow
|
-
+
tls |
comm · imap4 · pop3 · pop3d · smtp · transfer::connect · transfer::receiver · transfer::transmitter
|
-
+
TMML |
doctools · doctools::idx · doctools::idx · doctools::toc · doctools::toc · dtplite · dtplite · mpexpand
|
-
+
toc |
doctoc_intro · doctoc_plugin_apiref · doctools::toc · doctools::toc::export::doctoc · doctools::toc::export::html · doctools::toc::export::json · doctools::toc::export::nroff · doctools::toc::export::text · doctools::toc::export::wiki · doctools::toc::import::doctoc · doctools::toc::import::json
|
-
+
toc formatter |
doctoc_plugin_apiref
|
-
+
tokenization |
string::token · string::token::shell
|
-
+
TOOL |
oometa · tool · tool::dict_ensemble
|
-
+
top-down parsing languages |
grammar::me_intro · grammar::peg · grammar::peg::interp · pt · pt::ast · pt::cparam::configuration::critcl · pt::cparam::configuration::tea · pt::json_language · pt::param · pt::pe · pt::pe::op · pt::peg · pt::peg::container · pt::peg::container::peg · pt::peg::export · pt::peg::export::container · pt::peg::export::json · pt::peg::export::peg · pt::peg::from::container · pt::peg::from::json · pt::peg::from::peg · pt::peg::import · pt::peg::import::container · pt::peg::import::json · pt::peg::import::peg · pt::peg::interp · pt::peg::to::container · pt::peg::to::cparam · pt::peg::to::json · pt::peg::to::param · pt::peg::to::peg · pt::peg::to::tclparam · pt::peg_language · pt::pegrammar · pt::pgen · pt::rde · pt::tclparam::configuration::nx · pt::tclparam::configuration::snit · pt::tclparam::configuration::tcloo · pt::util · pt_export_api · pt_import_api · pt_introduction · pt_parse_peg · pt_parser_api · pt_peg_op
|
-
+
torrent |
bee
|
-
+
touch |
fileutil
|
-
+
TPDL |
grammar::me_intro
|
-
+
trace |
debug · debug::caller · debug::heartbeat · debug::timestamp
|
-
+
transducer |
grammar::aycock · grammar::fa · grammar::fa::dacceptor · grammar::fa::dexec · grammar::fa::op · grammar::me_intro · grammar::peg · grammar::peg::interp · pt · pt::ast · pt::cparam::configuration::critcl · pt::cparam::configuration::tea · pt::json_language · pt::param · pt::pe · pt::pe::op · pt::peg · pt::peg::container · pt::peg::container::peg · pt::peg::export · pt::peg::export::container · pt::peg::export::json · pt::peg::export::peg · pt::peg::from::container · pt::peg::from::json · pt::peg::from::peg · pt::peg::import · pt::peg::import::container · pt::peg::import::json · pt::peg::import::peg · pt::peg::interp · pt::peg::to::container · pt::peg::to::cparam · pt::peg::to::json · pt::peg::to::param · pt::peg::to::peg · pt::peg::to::tclparam · pt::peg_language · pt::pegrammar · pt::pgen · pt::rde · pt::tclparam::configuration::nx · pt::tclparam::configuration::snit · pt::tclparam::configuration::tcloo · pt::util · pt_export_api · pt_import_api · pt_introduction · pt_parse_peg · pt_parser_api · pt_peg_op
|
-
+
transfer |
transfer::connect · transfer::copy · transfer::copy::queue · transfer::data::destination · transfer::data::source · transfer::receiver · transfer::transmitter
|
-
+
transformation |
page_util_peg · tcl::transform::adler32 · tcl::transform::base64 · tcl::transform::counter · tcl::transform::crc32 · tcl::transform::hex · tcl::transform::identity · tcl::transform::limitsize · tcl::transform::observe · tcl::transform::otp · tcl::transform::rot · tcl::transform::spacer · tcl::transform::zlib
|
-
+
transmitter |
transfer::transmitter
|
-
+
travelling salesman |
struct::graph::op
|
-
+
traversal |
fileutil_traverse
|
-
+
tree |
grammar::me::cpu::gasm · grammar::me::util · htmlparse · struct::queue · struct::stack · struct::tree · struct::tree_v1 · treeql
|
-
+
tree query language |
treeql
|
-
+
tree walking |
page_util_flow · page_util_norm_lemon · page_util_norm_peg
|
-
+
TreeQL |
treeql
|
-
+
trigonometry |
math::trig
|
-
+
trimming |
textutil · textutil::trim
|
-
+
twitter |
oauth
|
-
+
type |
fileutil · fileutil::magic::cfront · fileutil::magic::cgen · fileutil::magic::filetype · fileutil::magic::rt · snit
|
-
+
Type checking |
valtype::common · valtype::creditcard::amex · valtype::creditcard::discover · valtype::creditcard::mastercard · valtype::creditcard::visa · valtype::gs1::ean13 · valtype::iban · valtype::imei · valtype::isbn · valtype::luhn · valtype::luhn5 · valtype::usnpi · valtype::verhoeff
|
-
+
uevent |
hook
|
-
+
unbind |
uevent
|
-
+
uncapitalize |
textutil::string
|
-
+
undenting |
textutil::adjust
|
-
+
unicode |
stringprep · stringprep::data · unicode · unicode::data
|
-
+
union |
struct::disjointset · struct::set
|
-
+
unit |
units
|
-
+
unknown hooking |
namespacex
|
-
+
untie |
tie · tie
|
-
+
update |
coroutine · coroutine::auto
|
-
+
uri |
uri · uri_urn
|
-
+
url |
doctools::idx · doctools::idx::export · doctools::idx::import · doctools::toc::export · doctools::toc::import · map::geocode::nominatim · map::slippy::fetcher · uri · uri_urn
|
-
+
urn |
uri_urn
|
-
+
US-NPI |
valtype::usnpi
|
-
+
utilities |
namespacex
|
-
+
uuencode |
uuencode
|
-
+
UUID |
uuid
|
-
+
Validation |
valtype::common · valtype::creditcard::amex · valtype::creditcard::discover · valtype::creditcard::mastercard · valtype::creditcard::visa · valtype::gs1::ean13 · valtype::iban · valtype::imei · valtype::isbn · valtype::luhn · valtype::luhn5 · valtype::usnpi · valtype::verhoeff
|
-
+
Value checking |
valtype::common · valtype::creditcard::amex · valtype::creditcard::discover · valtype::creditcard::mastercard · valtype::creditcard::visa · valtype::gs1::ean13 · valtype::iban · valtype::imei · valtype::isbn · valtype::luhn · valtype::luhn5 · valtype::usnpi · valtype::verhoeff
|
-
+
vectors |
math::linearalgebra
|
-
+
verhoeff |
valtype::verhoeff
|
-
+
vertex |
struct::graph · struct::graph::op
|
-
+
vertex cover |
struct::graph::op
|
-
+
virtual channel |
tcl::chan::cat · tcl::chan::core · tcl::chan::events · tcl::chan::facade · tcl::chan::fifo · tcl::chan::fifo2 · tcl::chan::halfpipe · tcl::chan::memchan · tcl::chan::null · tcl::chan::nullzero · tcl::chan::random · tcl::chan::std · tcl::chan::string · tcl::chan::textwindow · tcl::chan::variable · tcl::chan::zero · tcl::randomseed · tcl::transform::adler32 · tcl::transform::base64 · tcl::transform::core · tcl::transform::counter · tcl::transform::crc32 · tcl::transform::hex · tcl::transform::identity · tcl::transform::limitsize · tcl::transform::observe · tcl::transform::otp · tcl::transform::rot · tcl::transform::spacer · tcl::transform::zlib
|
-
+
virtual machine |
grammar::me::cpu · grammar::me::cpu::core · grammar::me::cpu::gasm · grammar::me::tcl · grammar::me_intro · grammar::me_vm · grammar::peg::interp · pt::param
|
-
+
VISA |
valtype::creditcard::visa
|
-
+
vwait |
coroutine · coroutine::auto · smtpd
|
-
+
wais |
uri
|
-
+
widget |
snit · snitfaq
|
-
+
widget adaptors |
snit · snitfaq
|
-
+
wiki |
doctools::idx · doctools::idx · doctools::idx::export · doctools::idx::export::wiki · doctools::toc · doctools::toc · doctools::toc::export · doctools::toc::export::wiki
|
-
+
word |
doctools::tcl::parse · wip
|
-
+
WWW |
tool
|
-
+
www |
uri
|
-
+
x.208 |
asn
|
-
+
x.209 |
asn
|
-
+
x.500 |
ldap
|
-
+
XGoogleToken |
SASL::XGoogleToken
|
-
+
xml |
xsxp
|
-
+
xor |
tcl::transform::otp
|
-
+
XPath |
treeql
|
-
+
XSLT |
treeql
|
-
+
yaml |
huddle · yaml
|
-
+
ydecode |
yencode
|
-
+
yEnc |
yencode
|
-
+
yencode |
yencode
|
-
+
zero |
tcl::chan::nullzero · tcl::chan::zero
|
-
+
zip |
zipfile::decode · zipfile::encode · zipfile::mkzip
|
-
+
zlib |
tcl::transform::zlib
|
-
+
zoom |
map::slippy · map::slippy::cache · map::slippy::fetcher
|