Software tools for intelligence, retrieval, mining, and development.

About these tools

Our tools are classified into three main categories:

  1. Recursive Forms (RF): name/value pairs are generated recursively.
  2. One-to-Many (O2M): One input maps to multiple outputs.
  3. Non-RF/O2M: Not based on RF or O2M, but listed by disciplines or topics.

Currently, the Physiology tools are the only ones written in PHP/AJAX, while all the other tools were exclusively written in PHP.

RF Tools

Recursive Forms Defined

At first, we defined a recursive form (RF) as an HTML form that utilizes its previous output as its new input. To be more precise, an RF is an HTML form in which successful controls' name/value pairs are generated recursively based on users' decision-making process. The design of an RF tool is non-intrusive and suitable for small screen displays. Additionally, RFs can coexist with other RFs or third-party tools.

Possible applications include:

  • Unit Converters; e.g., to convert units of measurements.
  • Recursive Searches; e.g., to recursively search associative arrays.
  • Find Equivalencies; e.g., to find mass-volume, volume-volume, and mass-mass equivalencies.
  • Equation Solver; i.e., to solve equations for a given term.
  • Reformatters; i.e., to convert values and strings to different formats.
  • Concept Mappers i.e., to report related concepts.
  • Find Products/Services Features; i.e., to report features of products or services.
  • Word Dictionaries; i.e., to find word definitions.
  • Word Translators; i.e., to translate words to different languages.
  • ...and many more.

RF Enhancements

Recursive forms (RFs) can be enhanced by adding new features. For example, our Recursive Searches tool includes a verbose mode, a mute mode, and a reset element. The verbose mode transforms recursive sessions into oracle-like sessions, while the mute mode disables the verbose mode, and the reset element resets the RF.

RFs can also be developed to accept user-defined parameters, as we demonstrated with the de Broglie's Equation Solver listed below.

Furthermore, it is possible to merge dissimilar RFs into a single one, as we illustrated with the Cooking Ingredient Converters.

Cooking Converters
Convert cooking ingredient amounts with these pre-merged RFs.
de Broglie's Equation Solver
Solve de Broglie's Equation with this parametric RF.
Planck's Equation Solver
Solve Planck's Equation for a missing term.
Recursive Temp. Converter
Convert temperature values between several scales of temperature.
Recursive Mini Converters
Convert units commonly used in Science and Engineering.
PT Recursive Searches
Search the Periodic Table by atomic numbers/weights and element/symbol names.

O2M Tools

The Problem:

Some user interfaces (UIs) create an illusion of mapping an input field value to all other fields by coding M number of conditional statements or hidden fields multiple times. For example, to create a UI that converts five units of temperature, one might need to write 25 conditional statements or hidden fields, which is an inefficient coding strategy. While a workaround is to write M different conditional statements using switches or if-else blocks, this approach becomes impractical as M increases and results in a complicated web of conditional logics.

The Solution:

To overcome these drawbacks, we developed the one-to-many (O2M) algorithm. The O2M algorithm uses a single function to transform the nature of fields. Given a form with M unique fields, selecting one as the input field randomly transforms the remaining fields into output fields. This way, an input value can be mapped to the remaining M - 1 output fields, without requiring a large number of conditional statements or hidden fields.

USA City Distances Calculator
Calculate geolocation mile distances from one to 300+ USA cities.
Energy Converter
Convert energy units including oil, coal, & natural gas equivalents.
Numbers Converter
Convert numbers from one-to-many number bases.
Trigonometric Converter
Convert degrees, gradians, radians, cosines, sines, tangents, and more.
Temperature Converter
Convert units like Celsius, Kelvin, Fahrenheit, Rankine, and others.
Mass Converter
Convert mass units: Avoirdupois, SI, Troy, Apothecaries, & others.
Volume Converter
Convert volume units like SI, US, British, and more.
Length Converter
Convert length units like SI, USCustomary, British, and more.

Non RF/O2M

These are tools that do not implement RF or O2M. We have organized these by disciplines or topics

Fractals and Chaos

Chaos Game Explorer
Explore fractal patterns with Barnsley's Chaos Game Algorithm.
Bifurcation Diagrams Explorer
Explore bifurcation diagrams of low dimensional nonlinear maps.
CSS Fractal Studio
Create CSS-only 2-dimensional fractals and multifractals.


Significant Figures Calculator
Compute significant figures of quantities in different formats.
Matrix Inverter
Invert a matrix through Gauss-Jordan Elimination, the easy way.
Matrix Multiplier
The easiest way of multiplying any two matrices.
Matrix Transposer
Transpose a matrix and find its products.


Regression & Correlation
Regression, Spearman & Pearson Correlation Coefficients, and more.
t, p, & Effect Size Estimator
Estimate t from p and vice versa, including associated effect sizes.
Student's t-Table Generator
Generate a customized table of Student's t-values.
t-values Calculator
Compute t-values from p-values with the Inverse CDF (ICDF).
p-values Calculator
Compute p-values for Student's t Tests.
Power Transformations
Transform a data set with Box-Cox Transformations.
Moving Averages
Calculate simple, cumulative, and exponential moving averages.
Normal CDF Transformations
The easiest way of computing multiple Z-to-P and P-to-Z values.
Fisher Transformations
Run multiple r-to-Z and Z-to-r Fisher Transformations.
Standardize one-variable data sets and compute statistics.
Combination, permutation, circulation, & inversion calculations.

Physiology PHP/AJAX

Mean Arterial Pressure (MAP)
Compute one term of the MAP equation in terms of the others.
A Body Shape Index (ABSI)
Compute one term of the ABSI equation in terms of the others.
Trefethen's New BMI
Compute one term of the new BMI equation in terms of the others.
Body Mass Index (BMI)
Compute one term of the BMI equation in terms of the others.
Corpulence Index (CI)
Compute one term of the CI equation in terms of the others.


Chemical Reactions Writer
A tool for writing chemical reactions.
Ideal Gas Law Oracle
Turn ideal gas law data into a question/answer oracle session.
Bond Order Calculator
Compute bond orders of diatomic species having up to 20 electrons.
Membrane Potentials
Easily solve Goldman-Hodgkin-Katz (GHK) Equation for a missing term.
Acid-Base Systems
Solve the general equation for acid-base systems and their titrations.
Activity Coefficient Models
Solve activity coefficient models for a missing term.
Cell Electrode Potentials
Solve the Cell Electrode Potential (EMF) equation for a missing term.
Standard Electrode Potentials
Solve the Standard Electrode Potential equation for a missing term.
Reagent Solutions Maker
Prepare a set of undiluted solutions from a solid reagent.
pH Scale Calculator
Generate a customized scale of pH, pOH, and concentration values.
Janet LSPT Program
Mine Janet Left-Step Periodic Table.
Electron Configurations
Compute predicted and observed electron configurations.
Hydrocarbons Parser
Predict chemical bonds, functional isomers, and physical properties.
VSEPR Wizard
Predict orbital and molecular geometries based on VSEPR data.
Diluted Solutions Maker
Prepare a set of diluted solutions from a lab stock solution.
Acids Iteration Pattern
Compute pH of acid solutions with this acids iteration pattern.

People Intelligence

Email Crawler
Extract email addresses from offline or online sources.
SSN Allocator
Allocate SSN through the USA and its possesions.
Credit Cards Validator
Validate a set of credit card numbers.
VIN Numbers Validator
Validate a set of motor vehicle identification numbers.

Text Mining

Text Streamer
Streamline text. Remove encoded or non-printable characters.
Keywords Spam Detector
Write better titles, abstracts, descriptions, & paragraphs.
Positional Posting Lists
Generate positional posting lists from a piece of text.
Levenshtein Edit Distances
Compute Levenshtein Edit Distances between text sequences.

Data Mining

Vector Space Explorer
Explore combinations of local and global weights for vector space models.
Cosine Similarity Calculator
Compute cosine similarities and distances between data sets.
Data Set Editor & Curator
Filter, deduplicate, and sort data sets.
Binary Similarity Calculator
Compute resemblance measures from binary data sets.
Binary Distance Calculator
Compute dissimilarity measures from binary data sets.

Social Mining

RAR Parser
Parse news feeds with this RSS, Atom, and RDF parser.

URL Mining

URL Cleaner
Clean URLs from search results pages from Google, Wikipedia, and others.
URL Query Parser
Parse up to 5000 URL queries and extract their name-value pairs.
Extract fully qualified urls (FQUs) from text or a previous FQU.

Domain Intelligence

Domain Extractor
Extract domains and subdomains from up to 10,000 URLs.
FCrDNS Lookups
Run up to 10 forward-confirmed reverse DNS (FCrDNS) lookups.
IP-Country Locator
Resolve up to 10 IPs to their corresponding countries.
Status Response Codes
Find http responses with a relevant keyword or status code.
Check up to 500 URLs for possible redirections, response codes, and IPs.


Palette Generator
Generate multiple color palettes from a small set of colors.
Find Unicode entities for web design or development.