Skip to main content

Setting Up Mass Loading Calculations

How SwiftComply turns concentration and flow into mass results, which data it uses, and what to check when a value is missing.

Overview

SwiftComply works out mass loading for you. When you save sample data and flow data on a sample report, it combines the concentration and the flow, converts the units, and fills in the mass result — so you don't calculate pounds or pounds per day by hand.

This article covers how to set a mass calculation up on a sample report configuration, what data it uses, and what to check when a value looks wrong or doesn't appear.


Before you begin

  • Mass calculations are configured on a sample report configuration, on the same Report Requirements step where you add sampling specifications and flow.

  • The requirement needs a concentration analyte to measure, and flow, for a value to calculate on its own.


How a mass result gets calculated

The calculation runs when you save. There's no button to press and nothing to schedule.

It needs two things on the same requirement: a concentration result for the analyte, and flow. When both are present the mass value appears by itself. When flow is missing the mass result stays empty — and you can always type the value in yourself.


Adding a mass calculated result

On the requirement, add a calculated result and choose one of the mass calculation types:

Calculation

What it produces

Daily Total (Mass)

a quantity — pounds or kilograms

4 Day Consecutive Total (Mass)

a quantity

Weekly Total (Mass)

a quantity

Monthly Total (Mass)

a quantity

Quarterly Total (Mass)

a quantity

Annual Total (Mass)

a quantity

For a rate — pounds per day rather than pounds — pick an ordinary calculation such as Daily Maximum, Weekly Average, Monthly Average or Annual Average, and set its Result Units to a mass-rate unit. The units you choose decide whether the result is a quantity or a rate, so the same calculation name can give you either.

💡 If you don't set a unit, a mass total defaults to Pounds.

Two things narrow what you can pick:

  • The calculation list only offers periods at least as long as the requirement's sampling frequency. A monthly requirement won't offer Daily Average, because it isn't sampled often enough to produce one.

  • The unit list is filtered by the analyte and the calculation you chose, so a mass total offers mass units and a concentration calculation offers concentration units.

⚠️ A requirement that has a mass calculation can have only one flow specification. The configuration won't activate with more than one, because the mass calculation would have no single unambiguous flow to use.


Making sure the right flow is available

Flow is scoped to the requirement. A mass calculation only uses flow from flow specifications configured on its own requirement — never flow from another requirement on the same report, and never a flow row someone added to the report by hand.

Concentration works the other way round. It's matched across the whole report by analyte and date. If two requirements both collect BOD, a BOD mass calculation on one requirement will use BOD results from both, including results entered as one-off sampling events.

📝 This is the difference that catches people out. Adding flow manually to a sample report will not make a mass value appear — the flow has to be configured on the requirement.


Entering and reviewing the results

The calculated result grid has these columns:

Column

Editable

Analyte

no

Calculated Value

no — this is the system's own figure

Manual Value

yes

Result Units

yes

Calculation

yes

Start Date/Time

yes

End Date/Time

yes

To override the system, type your figure into Manual Value. The system's own figure stays visible in Calculated Value beside it, so you can always see both.

💡 Clearing the Manual Value restores the system's figure. Overriding is never destructive — you're adding a value next to the calculated one, not replacing it.


Which results the calculation includes

Each mass calculation looks at a window of time, worked out from the calculation's period and the due date of the calculated result:

  • Every period is measured in whole calendar days, ending at the end of the due date's day.

  • The window then reaches back by the period: 1 day for Daily, 4 days for 4 Day Consecutive, 7 for Weekly, 30 for 30 Day, and whole calendar months for Monthly, Quarterly, 6 Month and Annual.

💡 The due date's time of day does not affect the window. A calculation due at 4 PM and one due at 11 PM on the same day look at exactly the same range of data, so you do not need to reason about due times when checking which results were included.

A concentration or flow result counts if its end date falls inside that window. Times are compared to the minute, so seconds don't matter.

Two things are left out:

  • A result with no end date. There's nothing to place it in the window with.

  • A measured result with no units. Rather than guess the unit, the calculation leaves it out entirely.


When flow covers a shorter period than the calculation

If the flow is reported more often than the calculation covers, the flow is scaled up. A requirement with a Daily Total (Volume) flow and a Monthly Total (Mass) calculation multiplies the daily flow across the days in the window to estimate the month.

📝 That scaling assumes flow is steady across the period. If the real discharge varies a lot day to day, a scaled monthly figure is an estimate, not a measurement — report flow at the same period as the calculation when the number needs to be exact.


Non-detects

Non-detect results are included, not skipped:

  • With an MDL, the MDL value is used.

  • Without an MDL, the result counts as zero.


How values are rounded

A value is stored at full precision and rounded only when it is displayed.

  • If a limit applies to that analyte and calculation type, the value is rounded to that limit's number of decimal places. Both compliance and notification limits count, and where several apply the most precise one wins.

  • If no limit applies, values under 1,000 show 3 significant figures and values of 1,000 or more show as whole numbers.

💡 A value you type into Manual Value is shown exactly as you typed it. This rounding only ever applies to the system's own figure, so your entry is never quietly reshaped.

Because the rounding happens at display time, changing a limit's precision updates existing rows without anything being recalculated.


FAQ

Why is the mass value empty?

There is no flow on the requirement. Add a flow specification to that requirement, or type the value into Manual Value.

Why is the mass value still empty after I added flow to the report?

The flow was added by hand on the report. Configure the flow on the requirement instead — ad-hoc flow is not used.

Why was a concentration result ignored?

It has no end date, or no units. Set its end date and units.

Why does the value look too high on a monthly calculation?

Daily flow was scaled up across the month. This is expected — see When flow covers a shorter period than the calculation.

Why won't the configuration activate?

The requirement has a mass calculation and more than one flow specification. Reduce it to one flow specification.

Why isn't the calculation I want offered?

Its period is shorter than the requirement's sampling frequency. Pick a longer period, or sample more often.

Why isn't the unit I want offered?

Units are filtered by analyte and calculation. Check the calculation type is the one you meant.

Why does a value show fewer decimals than I expected?

It is rounded to the decimal places of the limit that applies, or to 3 significant figures when none does. This is expected — compare against Calculated Value. A value you type into Manual Value is never rounded.


Related articles

  • Configuring Flow Reporting and Entering Flow Data

  • Understanding Sample Reports and Statuses

  • Location Summary Reports

Did this answer your question?