Solution Mix Plan
{{ totalMassDisplay }}
Total fertilizer to dissolve
Reservoir {{ reservoirDisplay }} {{ massPerVolumeDisplay }} {{ targetNBadge }} {{ targetPBadge }} {{ targetKBadge }}
Shows {{ reservoirSecondaryDisplay }}.
ppm
ppm
ppm
{{ fertDisplayName(fert, idx) }}
%
%
%
Fertilizer Amount N (ppm) P (ppm) K (ppm) Copy
{{ row.name }} {{ row.amountDisplay }} {{ row.n_ppm.toFixed(1) }} {{ row.p_ppm.toFixed(1) }} {{ row.k_ppm.toFixed(1) }}
No fertilizers in the blend.
Nutrient Target (ppm) Achieved (ppm) Difference % of target
{{ nutrient.label }} {{ nutrient.targetDisplay }} {{ nutrient.achievedDisplay }} {{ nutrient.deltaDisplay }} {{ nutrient.percentDisplay }}
No nutrient totals available.

                

Enter reservoir size, nutrient targets, and fertilizer analysis to size the blend.

Introduction:

Nutrient solutions are water based mixes that deliver nitrogen, phosphorus, and potassium for irrigation or hydroponic feeding. Setting clear elemental targets helps match crop demand and keeps ratios consistent across batches.

You enter your reservoir size and choose target concentrations in parts per million, then list fertilizer grades with their analysis. The engine converts phosphate (P2O5) and potash (K2O) to elemental phosphorus and potassium and computes weighed amounts that meet the targets within non negative constraints.

A practical run might use a 100 liter tank with targets 150, 50, and 200 for nitrogen, phosphorus, and potassium. With calcium nitrate, monopotassium phosphate, and potassium nitrate, the plan returns about 66.5 g, 22.0 g, and 36.1 g, which totals near 1.25 g per liter and lands on the requested ppm.

Totals speak to elemental coverage only, so compatibility, solubility, and mixing order still need attention. Follow product labels and try a small batch first before scaling.

For clear comparisons, keep units consistent between runs and record both ppm targets and product grades. All calculations are browser based and remain on your device.

Technical Details:

The calculation works with reservoir volume (L) and target concentrations for nitrogen, phosphorus, and potassium expressed as parts per million (ppm, mg/L). Fertilizer analyses are entered as percent nitrogen, percent phosphate as P2O5, and percent potash as K2O.

Targets are converted to required elemental mass in grams, then the mix is solved so that the weighted contributions from each enabled fertilizer meet those elemental masses. Because fertilizers contribute only non negative amounts of each element, the solution is constrained to non negative weights.

Phosphate and potash are converted to elemental fractions using constant factors: P2O5 → P with 0.4364 and K2O → K with 0.8301. Nitrogen uses its entered percent directly. These fractions form the contribution matrix for the solver.

mE = cE L 1000
Symbols and units
Symbol Meaning Unit/Datatype Source
L Reservoir volume L (or gal, qt, m³) Input
cE Target concentration for E ∈ {N, P, K} ppm (mg/L) Input
mE Required elemental mass g Derived
fj,E Elemental fraction of E in fertilizer j g/g Derived (P2O5×0.4364, K2O×0.8301)
xj Mass of fertilizer j in the mix g Output
mN = 1501001000 =15 g mP = 501001000 =5 g mK = 2001001000 =20 g

Computation proceeds in a short pipeline:

  1. Convert targets to elemental grams using ppm and volume.
  2. Convert P2O5 and K2O to elemental fractions; compute N fraction.
  3. Assemble a matrix of per gram contributions by fertilizer.
  4. Solve for non negative weights that minimize squared error.
  5. Report per fertilizer mass, elemental ppm, and mass per volume.

Units, precision, and rounding follow readable defaults. Values display with zero to six decimals using locale separators; internal math uses double precision. Mass is shown as g or kg for metric and as oz or lb for imperial; mass per volume displays as g/L or oz/gal.

Validation and bounds extracted from the interface
Field Type Min Max Step/Pattern Error Text Placeholder
Measurement system Select (metric, imperial) Options
Reservoir volume Number + unit (L, m³, gal, qt) 0 0.01 Reservoir volume must be greater than zero. e.g., 100
Target nitrogen Number (ppm) 0 1 Enter at least one nutrient target above zero. e.g., 150
Target phosphorus Number (ppm) 0 1 No enabled fertilizer supplies phosphorus. (when applicable) e.g., 50
Target potassium Number (ppm) 0 1 No enabled fertilizer supplies potassium. (when applicable) e.g., 200
Fertilizer name Text Max length 80 e.g., Calcium nitrate 15.5-0-0
Nitrogen percent Number (%) 0 100 0.1 [Name]: nitrogen percent must be between 0 and 100. e.g., 15.5
Phosphate (P2O5) percent Number (%) 0 100 0.1 [Name]: phosphate percent must be between 0 and 100. e.g., 52
Potash (K2O) percent Number (%) 0 100 0.1 [Name]: potash percent must be between 0 and 100. e.g., 46
Solver state Status Unable to find a non negative fertilizer blend for the chosen targets.
Constants and conversion factors
Constant Value Unit Source Notes
P2O5→P 0.4364 g/g Stoichiometric Converts phosphate to elemental phosphorus.
K2O→K 0.8301 g/g Stoichiometric Converts potash to elemental potassium.
gal→L 3.785411784 L/gal Unit factor Volume conversion for imperial family.
qt→L 0.946352946 L/qt Unit factor Volume conversion for imperial family.
m³→L 1000 L/m³ Unit factor Metric volume conversion.
oz→g 28.349523125 g/oz Unit factor Mass conversion.
lb→g 453.59237 g/lb Unit factor Mass conversion.

I/O and sharing options include readable tables for the mix and a nutrient summary. Plans can be copied to the clipboard or saved as CSV or DOCX, and a structured JSON snapshot preserves inputs and outputs for reuse.

Performance considerations are modest. The system solves small linear systems using dense normal equations and Gaussian elimination in cubic time relative to the number of active fertilizers.

Diagnostics display clear errors for missing targets, out of range percentages, unsupported nutrients, and unsolved mixes. Given identical inputs, outputs are deterministic.

Security and privacy are straightforward. Calculations, clipboard actions, and file saves run locally without sending data to a server.

  • Heads‑up Elemental totals ignore solubility limits and precipitation risks.
  • Heads‑up Compatibility, pH, and EC are not evaluated.
  • Only nitrogen, phosphorus, and potassium are modeled; other nutrients are out of scope.
  • Targets must be reachable by the enabled fertilizers; otherwise no solution appears.
  • Very large targets may be impractical in real tanks even if mathematically solvable.
  • Percent values assume product labeling accuracy.
  • Rounding affects display only; internal math keeps full precision.
  • Mass per volume is an indicator, not a stability or solubility guarantee.
  • Zero or missing volume prevents any calculation.
  • All targets at zero returns a prompt to enter a target.
  • Out of range percentages stop the run until corrected.
  • Enabled fertilizers with all zeros do not contribute.
  • Targets for a nutrient with no suppliers trigger a specific error.
  • Conflicting targets can force the solver to reject negative weights.
  • Extreme ratios can magnify rounding at the second decimal place.
  • Locale settings change decimal separators in displays.
  • Clipboard permissions may be blocked by the browser.
  • File downloads can be blocked by pop up settings.

Step‑by‑Step Guide:

Nutrient planning focuses on elemental coverage and a repeatable mix.

  1. Select Metric or Imperial.
  2. Enter the reservoir value and pick the unit L, m³, gal, or qt.
  3. Set at least one target in ppm for nitrogen, phosphorus, or potassium.
  4. Add fertilizers, enable them, and enter N, P2O5, K2O percentages.
  5. Review the mix table, nutrient summary, and mass per volume indicator.
  6. Copy or download the plan, then prepare the batch safely.

You now have a clear, shareable recipe to weigh and dissolve.

FAQ:

Is my data stored?

Privacy No data is transmitted or kept on a server. Calculations and file saves occur locally on your device.

How accurate are the results?

Precision Internal math uses double precision; displays are rounded for readability. If you repeat inputs, results repeat exactly.

Which units are supported?

Units Volume in liters, cubic meters, gallons, or quarts; mass in grams, kilograms, ounces, or pounds; concentration in ppm.

Can I use it offline?

Availability After the page loads, calculations and downloads continue to work without a network connection.

What does a borderline result mean?

Interpretation If percent of target is slightly under or over, adjust grades or ppm targets. Small deltas often reflect rounding and are operationally acceptable.

How do I convert P2O5 to P?

Conversion Multiply the P2O5 percentage by 0.4364 to get elemental phosphorus percentage. For K2O to K, multiply by 0.8301.

What if the solver cannot find a mix?

Feasibility The requested ppm may be unreachable with the enabled grades. Enable more sources or relax targets until a non negative solution appears.

Can I export my plan?

Sharing Yes. You can copy tables, download CSV, export DOCX, and save a JSON snapshot for repeatable runs.

Troubleshooting:

  • Nothing happens: ensure reservoir volume is above zero.
  • Red error about percentages: keep each percent between 0 and 100.
  • No phosphorus or potassium source: add or enable a fertilizer that supplies it.
  • Percent of target far off: adjust ppm targets or switch grades.
  • Copy fails: allow clipboard permissions in the browser.
  • Download blocked: enable downloads or allow pop ups temporarily.

Glossary:

ppm (mg/L)
Parts per million by mass in water; 1 ppm equals 1 mg per liter.
P2O5
Phosphate label form; multiply by 0.4364 for elemental P.
K2O
Potash label form; multiply by 0.8301 for elemental K.
Elemental fraction
Portion of an element per gram of fertilizer.
Non negative solution
A mix where each fertilizer mass is zero or greater.
Mass per volume
Total fertilizer divided by reservoir volume, shown as g/L or oz/gal.