Psychrometric series chart
Turn a complete temperature/RH series into rowwise moist-air properties and an all-point chart, preserving original and invalid rows.
- 1Add input
- 2Adjust settings
- 3Get your result
Tool input and files are processed in this browser without being uploaded.
Before you start
Bind CSV columns and units to calculate every moist-air row; keep original order and invalid records in complete outputs.
How to use this tool
- Choose SI/IP,matching temperature/pressure units,the pressure value and RH unit.
- Bind zero-based T/RH columns and optional time/ID.
- Paste/select the wholeCSV;run and inspect complete row states.
- Download all five complete files;copy retains every CSV row.
Supported inputs and limits
Paste or select one complete strictUTF-8 comma CSV with a header record:16 MiB,100,000 data records and 512 UTF-8 filename bytes. Choose one source. Clear pasted text before selecting a File; simultaneous File and text are rejected. One leading BOM remains in the exact original. Quoting, doubled quotes, embedded newlines and LF/CRLF/CR are accepted. Blank/ragged records remain invalid rows; malformed CSV, encoding or joint-budget failure rejects atomically.
Bind temperature and RH by explicit zero-based column index; optional time/ID index uses-1 for none. Preserve every header, original cell, CSV record ordinal and physical start/end line. No 3309-row prefix, inferred calendar/timezone, interpolation or silently dropped rows.
Choose SI+C with Pa/kPa, or IP+F with psi and one finite positive constant pressure. RH is explicitly percent or fraction. Temperature domain is[-100,200]C/[-148,392]F; normalized RH is[0,1]. Raw vapour pressure must be below total pressure.
Return every row state, humidity ratio, dewpoint, wetbulb, enthalpy and specific volume. Invalid numbers/domains/physical pressure or unavailable/nonfinite derived states keep original identity and null derived fields. Whole-budget/root failure delivers no partial result.
Raw RH/vapour pressure stay unchanged; PsychroLib humidity ratio is floored at 1 e-7 and flagged bounded. RH 0 dewpoint/wetbulb use this bounded ratio, not exact dry-air zero. Saturation changes ice/water formula at 0.01 C/32.018 F; wetbulb changes at 0 C/32 F.
Joint ceilings:1,000,000 scalar solves,100 actual iterations per Newton/bisection root and 100,000,000 work units. CSV characters, original calls and actual iterations are charged. Refuse before iteration 101. Row/input/solve ceilings must also satisfy complete-output/memory preflight; simultaneous maximum axes are not promised.
Five complete downloads:rows CSV,JSON report,all-point SVG,exact original and settings. Downloads+full copiedCSV+SVG preview≤64 MiB; full typed compactJSON≤32 MiB; aggregate≤96 MiB; binary+complete text/metadataUTF-8 census≤128 MiB.512 MiB is a conservative preflight census, not measured maximum browser heap.
Screen previews 4000 Unicode scalars and at most 200 valid points; copiedCSV and downloadedJSON/SVG stay complete. All valid points including overlaps remain; all 715 curve samples and invalid saturation regions are reported. One absolute 60 s deadline covers native metadata/read,import,Worker,full validation,cleanup and first post-await UI publication. Cancel/failure/late messages publish no partial result.
Browser-local; no content/filename upload. A full 8760-series and finite boundaries are measured in Node Worker; maximum joint capacity and browser acceptance are pending. No comfort classification, equipment design, per-row pressure model or Ladybug compatibility claim.
Worked example
Example input
id,T,RH ordinary,25,80
Example options
{"system":"SI","temperatureUnit":"C","rhUnit":"percent","pressureUnit":"Pa","pressure":101325,"temperatureColumn":1,"rhColumn":2,"idColumn":0}Example output
source_record,physical_start_line,physical_end_line,source_id,status,reason,raw_temperature,raw_rh,temperature,relative_humidity,vapour_pressure_raw,humidity_ratio,dew_point,wet_bulb,enthalpy,specific_volume,root_solves,root_iterations,wet_branch,saturation_branch 2,2,2,ordinary,valid,,25,80,25,0.8,2535.3731761149024,0.015961824340422887,21.309397163329322,22.38026666317871,65812.7475072273,0.8663011839616968,3,18,water,water
When something does not work
Correct parameters,CSV syntax/encoding or source-row values and retry. Reduce the complete request if joint budgets fail. After cancel/timeout retain the same originalFile and settings for a freshWorker run.
Frequently asked questions
Why does RH 0 still have a humidity ratio and dewpoint?
The kernel floors humidity ratio at 1 e-7. The report flags bounded and retains rawRH 0; derived values use the floor.
Does this reproduce the Ladybug author chart?
Original numbers,units and pressure are absent. The public posts establish the all 8760 import task;this tool provides an explicit completeCSV route.
Where do invalid rows go?
CompleteCSV/report retain original ordinal/cells,reason and null derived values. Only valid points plot;invalid curve regions remain reported.