---
title: "FormulaLookup"
language: "en"
type: "Symbol"
summary: "FormulaLookup[query] gives a list of the full names of formulas whose names are consistent with  query. FormulaLookup[query, n] returns at most n results. FormulaLookup[class] returns the names of all formulas within that class."
keywords: 
- FormulaData
- Formula
- Lookup
canonical_url: "https://reference.wolfram.com/language/ref/FormulaLookup.html"
source: "Wolfram Language Documentation"
related_guides: 
  - 
    title: "Formulas"
    link: "https://reference.wolfram.com/language/guide/Formulas.en.md"
related_functions: 
  - 
    title: "FormulaData"
    link: "https://reference.wolfram.com/language/ref/FormulaData.en.md"
  - 
    title: "MathematicalFunctionData"
    link: "https://reference.wolfram.com/language/ref/MathematicalFunctionData.en.md"
---
# FormulaLookup

FormulaLookup["query"] gives a list of the full names of formulas whose names are consistent with "query".

FormulaLookup["query", n] returns at most n results.

FormulaLookup["class"] returns the names of all formulas within that class.

## Details and Options

* ``FormulaLookup[All]`` gives a full list of formula names.

* ``FormulaLookup["Classes"]`` returns a full list of formula classes.

* The following options can be given:

|                             |    |                                      |
| --------------------------- | -- | ------------------------------------ |
| RequiredPhysicalQuantities  | {} | which physical quantities to require |
| ExcludedPhysicalQuantities  | {} | which physical quantities to exclude |

* Supported physical quantities include both physical and chemical quantities such as ``"Length"``,  ``"ElectricCurrent"``, and ``"ChemicalPotential"``, as well as mathematical and financial quantities such as ``"Angle"`` and ``"Money"``.

---

## Examples (17)

### Basic Examples (2)

Discover the full names of formulas for use in ``FormulaData`` :

```wl
In[1]:= FormulaLookup["ohm's law"]

Out[1]= {"OhmsLaw"}

In[2]:= FormulaData["OhmsLaw"]

Out[2]= V == I R
```

---

Find all formulas for a query:

```wl
In[1]:= FormulaLookup["pendulum"]

Out[1]= {{"PendulumSmallOscillations", "Standard"}, {"PendulumSmallOscillations", "Inertia"}, {"Pendulum", "Standard"}, {"Pendulum", "Inertia"}}
```

### Scope (3)

Limit the number of formulas displayed:

```wl
In[1]:= FormulaLookup["moment of inertia formula", 4]

Out[1]= {"ParallelAxisTheorem", "ConeMomentOfInertia", "CuboidMomentOfInertia", "CylinderMomentOfInertia"}
```

---

Find all available athletics formulas:

```wl
In[1]:= FormulaLookup["Athletics"]

Out[1]= {"BaseballBattingAverage", "BaseballGameScore", "BaseballIsolatedPower", "BaseballOnBasePercentagePlusSluggingPercentage", "BaseballPythagoreanWinExpectancy", "BaseballRangeFactor", "BaseballSluggingPercentage", {"BaseballBattingAverageOnBallsInPla ... "PullUpRepetitions", "PushUpRepetitions", "SitUpRepetitions", {"RowingMachine", "Speed"}, {"RowingMachine", "Pace"}, {"Running", "Speed"}, {"Running", "Pace"}, {"Swimming", "Speed"}, {"Swimming", "Pace"}, {"Walking", "Speed"}, {"Walking", "Pace"}}
```

---

Find all formula classes:

```wl
In[1]:= FormulaLookup["Classes"]

Out[1]= {"Athletics", "Chemistry", "EarthScience", "Engineering", "EverydayLife", "Finance", "Health&Medicine", "LifeSciences", "Mathematics", "Physics", "Space", "TechnologicalWorld", "Units", {"Athletics", "AmericanFootball"}, {"Athletics", "Baseball"},  ... "Space", "Astrodynamics"}, {"Space", "Astronomy"}, {"Space", "Astrophysics"}, {"Space", "Cosmology"}, {"TechnologicalWorld", "Advertising"}, {"TechnologicalWorld", "Automobiles"}, {"TechnologicalWorld", "Photography"}, {"Units", "UnitConversion"}}
```

### Options (9)

#### RequiredPhysicalQuantities (5)

Limit the results by specifying a list of required physical quantities:

```wl
In[1]:= FormulaLookup["moment of inertia formula", RequiredPhysicalQuantities -> {"Radius"}]

Out[1]= {"ConeMomentOfInertia", "CylinderMomentOfInertia", "DiskMomentOfInertia", "SphereMomentOfInertia"}
```

---

Several necessary physical quantities can be specified:

```wl
In[1]:= FormulaLookup["moment of inertia formula", RequiredPhysicalQuantities -> {"Radius", "Height"}]

Out[1]= {"ConeMomentOfInertia", "CylinderMomentOfInertia"}
```

---

Include both required physical quantities and physical quantities to be excluded:

```wl
In[1]:= FormulaLookup["moment of inertia formula", RequiredPhysicalQuantities -> {"Radius"}, ExcludedPhysicalQuantities -> {"Height"}]

Out[1]= {"DiskMomentOfInertia", "SphereMomentOfInertia"}
```

---

Examine all formulas with specified physical quantities:

```wl
In[1]:= FormulaLookup[All, RequiredPhysicalQuantities -> {"Distance", "Mass"}]

Out[1]= {"MinimumPowerRequiredToMoveObject", "NewtonsLawOfUniversalGravitation", {"Work", "Acceleration"}, {"InclinedPlaneRolling", "PureRollingSpeedDistanceVelocity", "Slope", "MomentOfInertia"}, {"InclinedPlaneRolling", "PureRollingSpeedDistanceVelocity" ... a"}, {"InclinedPlaneRolling", "PureRollingSpeedDistanceVelocity", "Slope", "MomentOfInertia", "GravitationalAcceleration"}, {"InclinedPlaneRolling", "PureRollingSpeedDistanceVelocity", "SlopeAngle", "MomentOfInertia", "GravitationalAcceleration"}}
```

---

Find physics formulas using speed, distance and height:

```wl
In[1]:= FormulaLookup["Physics", RequiredPhysicalQuantities -> {"Speed", "Distance", "Height"}]

Out[1]= {"Projectile", "ThrowingAngle"}
```

#### ExcludedPhysicalQuantities (4)

Limit the results by specifying a list of excluded physical quantities:

```wl
In[1]:= FormulaLookup["moment of inertia formula", ExcludedPhysicalQuantities -> {"Height"}]

Out[1]= {"CuboidMomentOfInertia", "DiskMomentOfInertia", "EllipticalLaminaMomentOfInertia", "ParallelAxisTheorem", "PointMassMomentOfInertia", "SolidEllipsoidMomentOfInertia", "SphereMomentOfInertia", "ThinRodMomentOfInertia", "TriangularPlateMomentOfInertia"}
```

---

Several necessary physical quantities can be specified:

```wl
In[1]:= FormulaLookup["moment of inertia formula", ExcludedPhysicalQuantities -> {"Radius", "Height"}]

Out[1]= {"CuboidMomentOfInertia", "EllipticalLaminaMomentOfInertia", "ParallelAxisTheorem", "PointMassMomentOfInertia", "SolidEllipsoidMomentOfInertia", "ThinRodMomentOfInertia", "TriangularPlateMomentOfInertia"}
```

---

Include both required physical quantities and physical quantities to be excluded:

```wl
In[1]:= FormulaLookup["moment of inertia formula", RequiredPhysicalQuantities -> {"Radius"}, ExcludedPhysicalQuantities -> {"Height"}]

Out[1]= {"DiskMomentOfInertia", "SphereMomentOfInertia"}
```

---

Find all formulas with specified physical quantities but not including other physical quantities:

```wl
In[1]:= FormulaLookup[All, 10, RequiredPhysicalQuantities -> {"Distance", "Mass"}, ExcludedPhysicalQuantities -> {"SlopeAngle", "Work", "Length"}]

Out[1]= {"MinimumPowerRequiredToMoveObject", "NewtonsLawOfUniversalGravitation", {"InclinedPlaneRolling", "PureRollingSpeedDistanceVelocity", "Slope", "MomentOfInertia"}, {"InclinedPlaneRolling", "PureRollingSpeedDistanceVelocity", "SlopeAngle", "MomentOfInertia"}, {"InclinedPlaneRolling", "PureRollingSpeedDistanceVelocity", "Slope", "MomentOfInertia", "GravitationalAcceleration"}, {"InclinedPlaneRolling", "PureRollingSpeedDistanceVelocity", "SlopeAngle", "MomentOfInertia", "GravitationalAcceleration"}}
```

### Applications (1)

Find all formulas for the moment of inertia:

```wl
In[1]:= formulas = FormulaLookup["moment of inertia", 20]

Out[1]= {"ParallelAxisTheorem", "ConeMomentOfInertia", "CuboidMomentOfInertia", "CylinderMomentOfInertia", "DiskMomentOfInertia", "EllipticalLaminaMomentOfInertia", "PointMassMomentOfInertia", "SolidEllipsoidMomentOfInertia", "SphereMomentOfInertia", "ThinRodMomentOfInertia", "TriangularPlateMomentOfInertia"}

In[2]:= Grid[{#, FormulaData[#]}& /@ formulas, Frame -> All]

Out[2]=
|                                   |                                                  |
| --------------------------------- | ------------------------------------------------ |
| "ParallelAxisTheorem"             | I∥ == m r^2 + ICM                ... a"           | I == (2/5) m r^2                                  |
| "ThinRodMomentOfInertia"          | {I∥ == 0, I⊥ == (1/12) l^2 m}                      |
| "TriangularPlateMomentOfInertia"  | Iz == (1/36) (a^2 + b^2 + c^2) m                  |
```

### Possible Issues (1)

Many formulas have multiple forms:

```wl
In[1]:= FormulaLookup["planck's law"]

Out[1]= {{"PlanckRadiationLaw", "Wavelength"}, {"PlanckRadiationLaw", "Frequency"}}

In[2]:= Column[{FormulaData[{"PlanckRadiationLaw", "Wavelength"}], FormulaData[{"PlanckRadiationLaw", "Frequency"}]}]

Out[2]=
L[λ] == (Quantity[2, "PlanckConstant"*"SpeedOfLight"^2]/(-1 + E^(Quantity[1, ("PlanckConstant"*"SpeedOfLight")/"BoltzmannConstant"]/T λ)) λ^5)
L[ν] == ((Quantity[2, "PlanckConstant"/"SpeedOfLight"^2]) ν^3/-1 + E^((Quantity[1, "PlanckConstant"/"BoltzmannConstant"]) ν/T))
```

### Interactive Examples (1)

Dynamically examine formulas with specific physical quantities:

```wl
In[1]:=
pqs = {"Time", "Length", "Mass", "Frequency", "Speed", "Energy", "Power"};
Manipulate[
 formulas = FormulaLookup[All, 1000, RequiredPhysicalQuantities -> {pq1, pq2, pq3}];
 If[formulas === {}, Style["no formulas found", Gray], 
  Pane[Column[
    Column[{Style[#, Bold], Column[Flatten[{FormulaData[#, "Formula"]}]], 
        FormulaData[#, "QuantityVariableTable"]}] & /@ formulas, 
    Dividers -> Center], {Automatic, 500}, 
   Scrollbars -> True]], 
 {{pq1, "Time", "phys. quant. 1"}, pqs, SetterBar}, 
 {{pq2, "Length", "phys. quant. 2"}, pqs, SetterBar}, 
 {{pq3, "Speed", "phys. quant. 3"}, pqs, SetterBar}, SaveDefinitions -> True]

Out[1]= DynamicModule[«8»]
```

## See Also

* [`FormulaData`](https://reference.wolfram.com/language/ref/FormulaData.en.md)
* [`MathematicalFunctionData`](https://reference.wolfram.com/language/ref/MathematicalFunctionData.en.md)

## Related Guides

* [`Formulas`](https://reference.wolfram.com/language/guide/Formulas.en.md)

## History

* [Introduced in 2014 (10.0)](https://reference.wolfram.com/language/guide/SummaryOfNewFeaturesIn100.en.md)