GratisAIhealth · field guide · local-first · no account
circadian midpoint clockwheel

Average Sleep Midpoint Clocks Without Turning Midnight into Noon — Free

Midpoint clocks near midnight should not average to lunchtime. Keep the recorded overnight window and its circular direction visible before using a diary to ask a clinician about timing.

The proof surface

Duration consistency is not clock-phase averaging: unwrap each night's window, then average its midpoint on a circle and expose concentration.

InputNight code | bedtime HH:MM | wake clock HH:MM; resultant-length review floor (0–1)
Rare deviceDuration consistency is not clock-phase averaging: unwrap each night's window, then average its midpoint on a circle and expose concentration.
Output artifactCircular midpoint minute plus complete labeled working
Cost$0 local core · no account, card, paid key or subscription · filing proposal has no checkout
Sample, not your facts: Invented records: Cedar night | 22:40 | 06:40; Willow night | 23:40 | 07:40. Resultant-length review floor (0–1) = 0.2; expected Circular midpoint minute: 190 minutes after midnight. These are not quotations, verified observations or personal evidence.

Before using the circadian midpoint clockwheel

This clockwheel is for a factual diary conversation, not a bedtime prescription. Enter one main sleep window per row using clocks from the same local-time convention. It assumes the next occurrence of the wake clock within 24 hours; it cannot represent a date-line jump, daylight-saving clock change or a window longer than a day. Naps and split sleep should not be silently combined into a main window. A midpoint is halfway through an entered clock window, not measured sleep onset, sleep stages or a chronotype. If the diary covers changing offsets, preserve the actual dates and offsets elsewhere and discuss how to analyze them before using these clock-only rows.

Why the flat version breaks

A linear clock average jumps across the wrong side

A pair around 23:00 and 01:00 can produce 12:00 when minute labels are averaged directly. The wheel avoids that wrap error, but it does not choose between two equal opposing clusters. When the mean vector cancels, no summary clock is invented. Add genuine observations or report the separate clusters rather than changing the review floor to conceal an undefined direction.

Concentration is mistaken for sleep quality

One identical midpoint repeated many times gives R near one even if the recorded windows are short or the person feels unwell. Conversely, varying work shifts can create dispersion without explaining its cause. Duration, timing concentration and symptoms are separate observations. This instrument intentionally has no healthy/unhealthy band and does not generate advice about medication, treatment, working hours or an appropriate sleep schedule.

A changed clock offset is treated as elapsed time

The next-wake clock convention is not timezone arithmetic. A clock change overnight can alter the elapsed duration even when the displayed HH:MM pair looks ordinary. These rows have no offset field, so they cannot correct it. Keep dates and offsets in the source diary; use this tool only for comparable clock conventions. A tidy result is not permission to drop that source context.

How to work the circadian midpoint clockwheel

Define the window before reducing it

Choose a non-sensitive night code and transcribe bedtime and wake time as two HH:MM clocks. Bedtime is not necessarily the moment you fell asleep. A wake clock earlier than bedtime is treated as the next day, not a negative duration. Record unusual conditions separately rather than changing clocks until the output looks tidy. The tool rejects malformed clocks and equal endpoints, because neither a guessed date nor an assumed 24-hour sleep is an acceptable fix for missing information.

Locate each midpoint on the wheel

Add half the modeled duration to the bedtime, then reduce the result modulo 1,440 minutes. A half-minute midpoint remains a decimal internally even when the helpful clock label is rounded. Each row retains bedtime, wake clock, modeled duration and midpoint. This makes the convention inspectable: an overnight interval still produces a short continuous window, rather than a huge negative subtraction. Do not replace a night with an average clock before checking the underlying two endpoints.

Average directions, not printed clock numbers

Convert each midpoint to an angle of 2π times its minute-of-day divided by 1,440. Average cosine and sine separately, use atan2 to recover the mean angle, and normalize midnight to zero. The vector length R is between zero and one. Numerically, R at or below 10⁻¹⁰ is treated as canceled and causes an explicit error; below your review floor the mean remains a mathematical result but is labeled partial because the directions are dispersed. Nights are equally weighted, not weighted by duration.

Take the clocks and the caveat together

Check the night count, durations, midpoint clocks and concentration before copying the reading. Do not read the mean as a target bedtime or a diagnosis. Removing a night because it is inconvenient changes the evidence set. If you want a clinician to interpret fatigue or sleep problems, bring the original dated diary and relevant context rather than just the summary. The optional filing layer stores a headline, not the full clinical history; the unlimited article demo remains available for another calculation.

What the circadian midpoint clockwheel keeps distinct

QuestionBeforeCheck this working
A linear clock average jumps across the wrong sideA pair around 23:00 and 01:00 can produce 12:00 when minute labels are averaged directly. The wheel avoids that wrap error, but it does not choose between two equal opposing clusters. When the mean vector cancels, no summary clock is invented. Add genuine observations or report the separate clusters rather than changing the review floor to conceal an undefined direction.Locate each midpoint on the wheel
Concentration is mistaken for sleep qualityOne identical midpoint repeated many times gives R near one even if the recorded windows are short or the person feels unwell. Conversely, varying work shifts can create dispersion without explaining its cause. Duration, timing concentration and symptoms are separate observations. This instrument intentionally has no healthy/unhealthy band and does not generate advice about medication, treatment, working hours or an appropriate sleep schedule.Average directions, not printed clock numbers
A changed clock offset is treated as elapsed timeThe next-wake clock convention is not timezone arithmetic. A clock change overnight can alter the elapsed duration even when the displayed HH:MM pair looks ordinary. These rows have no offset field, so they cannot correct it. Keep dates and offsets in the source diary; use this tool only for comparable clock conventions. A tidy result is not permission to drop that source context.Take the clocks and the caveat together

The circadian midpoint clockwheel replaces this named manual reconciliation, not source verification or the responsible human's decision.

Run it on the samples, right here

FIRST-LOAD

HYPOTHESIS / PROTOTYPE — checkout unavailable. Calculation is local. A draft is saved automatically in this browser profile when storage is available; Reset to sample clears it. Optional Pro history stores only five summaries and has its own deletion control. State links encode your inputs and can remain in browser history, clipboard or recipients’ records; share only non-sensitive rows. Optional external AI formatting leaves this device. The required site analytics beacon reports page activity; shared URLs contain encoded inputs. Do not treat an encoded URL as private. The calculator has no input-collection endpoint.

Diary arithmetic only: no sleep diagnosis, chronotype assessment or treatment advice. Confirm clock conventions and bring persistent sleep concerns and the original dated diary to a qualified clinician; do not change care from this midpoint.

Data note: This circadian midpoint clockwheel calculates in the tab from Night code | bedtime HH:MM | wake clock HH:MM. No input-collection endpoint, AI request or file upload is built into it. Drafts may be saved locally; explicit input-state links and optional external formatting can disclose the records. Use non-sensitive codes and clear the draft when finished.

Go deeper: the companion app files the same reading as a meter band gauge

The article demo above runs without limits. The companion app keeps a local history, exports the rows as CSV, prints the circadian midpoint clockwheel reading, and holds your drafts on this device — one complete free app run; the proposed $4 one-time filing layer is not for sale.

Keep the complete circadian midpoint clockwheel answer free; optional filing proposes its boundary-preserving print, row-and-summary CSV and five local reading summaries. The $4 one-time prototype is not for sale; another calculation remains free in the article demo.

Open the circadian midpoint clockwheel companion

Boundary

Diary arithmetic only: no sleep diagnosis, chronotype assessment or treatment advice. Confirm clock conventions and bring persistent sleep concerns and the original dated diary to a qualified clinician; do not change care from this midpoint.

What this is built on

Before: midnight split the diary into misleadingly large and small numbers. After: midpoint directions and their concentration stay together on one clock wheel.

Three worked readings, with different inputs

Sample A — typical inputs

Cedar night | 22:40 | 06:40
Willow night | 23:40 | 07:40

Setting: Resultant-length review floor (0–1) = 0.2. Expected summary: 190 minutes after midnight.

Each invented night spans eight hours under the next-wake-within-24-hours convention. Its midpoint is 02:40 or 03:40. Those clocks lie one hour apart; their circular mean is 03:10, or 190 minutes after midnight. Resultant length is about 0.991445, above the entered 0.2 review floor. That concentration describes clock alignment only. It does not establish good sleep, sufficient sleep or a stable biological rhythm.

Sample B — changed plan

Orchard shift | 19:00 | 03:00
Harbor shift | 21:00 | 05:00

Setting: Resultant-length review floor (0–1) = 0.2. Expected summary: 0 minutes after midnight.

These midpoint clocks are 23:00 and 01:00. A direct average of 1,380 and 60 minutes would print noon, which is opposite the intended pair. Averaging unit-circle coordinates instead gives midnight. The result is normalized to zero rather than 1,440 minutes. Resultant length is about 0.965926; it tells you the two entered midpoint directions are close, not that these work patterns are clinically appropriate.

Sample C — boundary convention

Pine short window | 23:55 | 00:05

Setting: Resultant-length review floor (0–1) = 0.2. Expected summary: 0 minutes after midnight.

This ten-minute window crosses midnight and has a midnight midpoint. Its resultant length is one because there is only one direction. Perfect concentration with one observation is not evidence of repeatability. The row therefore still shows its ten-minute duration and the one-night count. Equal bedtime and wake clocks are different: they could mean zero or 24 hours, so that ambiguous input is rejected instead of inferred.

Optional AI formatting, never the calculation

Manual entry completes this circadian midpoint clockwheel for free without signup. If available to you, the free AI Studio interface linked in the sources may format fictional or non-sensitive notes; external access may require an account. No API key or AI call is built into this tool. Free-tier content may be used to improve products. Review each cell and transcribe it to the labeled row schema; do not paste the JSON object into the row box.

Format only these fictional or non-sensitive notes for a circadian midpoint clockwheel. Return strict JSON shaped as {"rows": [{"label": "string", "cells": ["string", "string"]}], "setting": "string"}. The columns are Night code | bedtime HH:MM | wake clock HH:MM; the setting is Resultant-length review floor (0–1). Keep all supplied strings and quantities exactly; do not calculate, infer missing entries, invent dates or add advice. If any required value is missing, return an empty rows array and ask me for it separately. I will verify every cell against my source and manually transcribe rows using vertical bars before running the local calculator.

An AI response is not executed, fetched or trusted as a result. Missing values remain questions; the strict local parser checks the rows you actually enter.