247 lines
16 KiB
HTML
247 lines
16 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<style id="fort-styles">
|
||
[data-fort]{font:inherit;color:inherit}
|
||
ul[data-fort]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45em}
|
||
[data-fort] li{margin:0;padding:0;line-height:1.45;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
|
||
[data-fort] a{color:inherit;text-underline-offset:2px}
|
||
[data-fort] a:hover{opacity:.72}
|
||
[data-fort] .src,[data-fort] .fm-type{opacity:.6;font-size:.85em}
|
||
.fort-citizen{display:flex;flex-direction:column;gap:.4em}
|
||
.fort-citizen .fc-name{font-weight:600}
|
||
.fort-citizen .fc-pages{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3em}
|
||
.fort-media,.fort-film{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.6em}
|
||
.fort-film{list-style:none;margin:0;padding:0}
|
||
.fort-film li{overflow:visible;white-space:normal}
|
||
.fort-film a{display:flex;flex-direction:column;gap:.3em;text-decoration:none}
|
||
.fort-media img,.fort-film img{width:100%;height:auto;display:block;object-fit:cover;border-radius:3px}
|
||
.fort-film img{aspect-ratio:16/10}
|
||
.fort-nav{display:flex;flex-wrap:wrap;gap:1em;align-items:center}
|
||
</style>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>The Light Budget — a conservator's dose calculator | Anna Martinez</title>
|
||
<meta name="description" content="A working toolkit for the light dose a loan can safely absorb — lux-hours, sensitivity curves, and the arithmetic behind the quiet craft of museum conservation.">
|
||
<meta property="og:type" content="website">
|
||
<meta property="og:title" content="The Light Budget — a conservator's dose calculator">
|
||
<meta property="og:description" content="Lux-hours, sensitivity classes, and how long a loan can safely stay under the lamps. A working tool from a museum administrator.">
|
||
<meta property="og:url" content="https://anna-martinez.4ort.net/light-budget.html">
|
||
<meta name="twitter:card" content="summary_large_image">
|
||
<script defer src="https://analytics.4ort.xyz/script.js" data-website-id="d3ed927c-888a-4a6c-ae5f-0b1c613ddf5b"></script>
|
||
<style>
|
||
:root{
|
||
--paper:#f1e9da; /* aged catalogue board */
|
||
--cream:#faf5e8;
|
||
--ink:#2a2118; /* near-black warm */
|
||
--rule:#8a7a5f;
|
||
--accent:#7a2e12; /* oxblood */
|
||
--faint:#b7ab92;
|
||
}
|
||
*{box-sizing:border-box;}
|
||
body{
|
||
margin:0;background:var(--paper);color:var(--ink);
|
||
font-family:"Garamond","Georgia",serif;line-height:1.55;
|
||
background-image:
|
||
repeating-linear-gradient(0deg, rgba(122,46,18,0.025) 0 1px, transparent 1px 3px);
|
||
}
|
||
.page{max-width:920px;margin:0 auto;padding:0 28px 80px;}
|
||
header.top{
|
||
padding:26px 0 14px;border-bottom:3px double var(--ink);
|
||
display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;
|
||
}
|
||
.mark{letter-spacing:.35em;font-size:.72rem;text-transform:uppercase;color:var(--accent);}
|
||
.masthead{font-size:2.9rem;font-weight:400;line-height:.95;margin:.3rem 0;}
|
||
header.top nav{display:flex;gap:22px;font-size:.9rem;flex-wrap:wrap;}
|
||
header.top nav a{color:var(--ink);text-decoration:none;border-bottom:1px solid transparent;}
|
||
header.top nav a:hover{border-bottom-color:var(--accent);color:var(--accent);}
|
||
.catalogue{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--rule);margin:8px 0 0;}
|
||
h2{font-weight:400;font-size:1.35rem;border-bottom:1px solid var(--rule);padding-bottom:4px;}
|
||
h2 .num{color:var(--accent);font-size:.85em;margin-right:10px;}
|
||
.lede{font-size:1.12rem;font-style:italic;color:#4a3d2c;}
|
||
p{color:#3a2f20;}
|
||
.tool{
|
||
border:1px solid var(--ink);background:var(--cream);
|
||
padding:22px 24px;margin:26px 0;box-shadow:4px 4px 0 rgba(42,33,24,.15);
|
||
position:relative;
|
||
}
|
||
.tool::before{content:"FIELD LOG — LOAN /";position:absolute;top:-9px;left:16px;
|
||
background:var(--paper);padding:0 8px;font-size:.7rem;letter-spacing:.22em;color:var(--accent);}
|
||
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;}
|
||
label{display:block;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rule);margin-bottom:5px;}
|
||
input,select{width:100%;padding:9px 10px;font-family:inherit;font-size:1rem;
|
||
border:1px solid var(--rule);background:#fffdf6;color:var(--ink);}
|
||
input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px;}
|
||
.result{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px;border-top:1px solid var(--rule);padding-top:16px;}
|
||
.stat{border-left:3px solid var(--accent);padding-left:12px;}
|
||
.stat .k{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--rule);}
|
||
.stat .v{font-size:1.5rem;font-weight:400;margin-top:2px;}
|
||
.verdict{margin-top:18px;padding:14px;background:var(--paper);border:1px solid var(--rule);font-size:.95rem;}
|
||
.verdict b{color:var(--accent);}
|
||
.sensitivity{
|
||
display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0;counter-reset:sens;
|
||
}
|
||
.sens-card{border:1px solid var(--rule);padding:12px;background:var(--cream);position:relative;}
|
||
.sens-card:nth-child(1){border-left:5px solid var(--accent);}
|
||
.sens-card:nth-child(2){border-left:5px solid #a05a2c;}
|
||
.sens-card:nth-child(3){border-left:5px solid #b09a3e;}
|
||
.sens-card:nth-child(4){border-left:5px solid #5a7a4a;}
|
||
.sens-card h3{font-size:.8rem;margin:0 0 4px;letter-spacing:.08em;text-transform:uppercase;}
|
||
.sens-card p{margin:0;font-size:.82rem;}
|
||
.sens-card .lux{font-size:1.1rem;color:var(--accent);}
|
||
.marginalia{font-size:.82rem;color:var(--rule);font-style:italic;border-top:1px dotted var(--rule);margin-top:18px;padding-top:8px;}
|
||
table{border-collapse:collapse;width:100%;font-size:.92rem;margin:14px 0;}
|
||
th,td{border:1px solid var(--rule);padding:8px 10px;text-align:left;vertical-align:top;}
|
||
th{letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;color:var(--ink);background:var(--cream);}
|
||
td .u{font-size:.78rem;color:var(--rule);}
|
||
.source{font-size:.8rem;color:var(--rule);}
|
||
.source a{color:var(--accent);}
|
||
.figure{margin:26px 0;border:1px solid var(--rule);padding:8px;background:var(--cream);}
|
||
.figure img{width:100%;display:block;}
|
||
.figure figcaption{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--rule);padding:8px 4px 2px;}
|
||
.foot{border-top:1px solid var(--rule);margin-top:60px;padding-top:18px;font-size:.85rem;color:var(--rule);
|
||
display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:space-between;}
|
||
.foot a{color:var(--accent);}
|
||
.jsonlink{position:fixed;right:14px;bottom:14px;background:var(--ink);color:var(--cream);
|
||
padding:8px 12px;font-size:.75rem;letter-spacing:.1em;text-decoration:none;border:1px solid var(--ink);}
|
||
.jsonlink:hover{background:var(--accent);}
|
||
.dose-notice{color:var(--accent);}
|
||
@media(max-width:640px){.grid,.result,.sensitivity{grid-template-columns:1fr;} .masthead{font-size:2rem;}}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<div class="page">
|
||
<header class="top">
|
||
<div>
|
||
<div class="mark">Anna Martinez — Office of Collections & Administration</div>
|
||
<div class="masthead">The Light Budget</div>
|
||
<div class="catalogue">sheet 09 · light dose, not lux · rev. 2026</div>
|
||
</div>
|
||
<fort-nav><nav class="fort-nav" data-fort="nav"><a href="/">Anna Martinez</a><a href="/films/negros-fruit-dove/">Index</a><a href="/about.html">About Anna Martinez</a><a href="/charcoal-study.html">Charcoal Study: Grades, Tooth, and the Arithmetic of Black</a><a href="/conservation-ready-spaces.html">Conservation-Ready Spaces: An Administrator's Guide to Environmental Monitoring</a><a href="/contact.html">Contact Anna Martinez</a><a href="/negros-fruit-dove.html">Ptilinopus arcanus</a><a href="/light-budget.html" class="active" aria-current="page">The Light Budget</a><a href="/quiet-discipline.html">The Quiet Discipline: Notes from the Margins</a></nav></fort-nav>
|
||
</header>
|
||
|
||
<div style="height:26px"></div>
|
||
<p class="lede">Nobody loans a guard, a light meter, and a prayer. You loan light — a finite allowance of <b>lux-hours</b> that a work may absorb before cumulative damage begins. The chancellor's question is never "is it bright?" but "how many photons, over how many days, may a Rembrandt safely drink?" This is the arithmetic that answers it.</p>
|
||
|
||
<h2><span class="num">I.</span>The allowance table</h2>
|
||
<p>International conservation practice (below, cited to the ICOM-CC / CIE guidance and the CIE 157 standard on museum lighting) groups works into four dose classes. The real variable is <i>photochemical dose</i> — the product of illuminance and exposure time:</p>
|
||
<div class="sensitivity">
|
||
<div class="sens-card"><h3>Class A · Light-sensitive</h3><p class="lux">≤ 50 lux</p><p>Watercolours, silk, most dyes, photographic prints, insect pigments.</p></div>
|
||
<div class="sens-card"><h3>Class B · Moderate</h3><p class="lux">≤ 150 lux</p><p>Oil and tempera, most woods, lacquers, undyed leather.</p></div>
|
||
<div class="sens-card"><h3>Class C · Fairly durable</h3><p class="lux">≤ 300 lux</p><p>Stone, ceramic, undyed glass, metal, unframed bone.</p></div>
|
||
<div class="sens-card"><h3>Class D · Durable</h3><p class="lux">no limit</p><p>Unpainted metal, unfired mineral, vitreous enamel.</p></div>
|
||
</div>
|
||
|
||
<h2><span class="num">II.</span>Field tool — the dose ledger</h2>
|
||
<p>Enter the loan's terms. The tool computes the <b>annual light dose</b> (lux-hours) against the recommended budget for that class, and warns when a temporary loan is burning through a work's lifetime allowance too fast.</p>
|
||
|
||
<div class="tool">
|
||
<div class="grid">
|
||
<div>
|
||
<label for="lux">Display illuminance (lux)</label>
|
||
<input id="lux" type="number" value="50" min="1" max="1000" step="1">
|
||
</div>
|
||
<div>
|
||
<label for="hours">Hours of display per day</label>
|
||
<input id="hours" type="number" value="8" min="1" max="24" step="0.5">
|
||
</div>
|
||
<div>
|
||
<label for="days">On-view days per year</label>
|
||
<input id="days" type="number" value="180" min="1" max="366" step="1">
|
||
</div>
|
||
<div>
|
||
<label for="class">Sensitivity class</label>
|
||
<select id="class">
|
||
<option value="A" selected>A — light-sensitive (50 lux)</option>
|
||
<option value="B">B — moderate (150 lux)</option>
|
||
<option value="C">C — fairly durable (300 lux)</option>
|
||
<option value="D">D — durable (no limit)</option>
|
||
</select>
|
||
</div>
|
||
</div>
|
||
<div class="result">
|
||
<div class="stat"><div class="k">Annual dose</div><div class="v" id="dose">—</div></div>
|
||
<div class="stat"><div class="k">Allowed at this class</div><div class="v" id="allowed">—</div></div>
|
||
<div class="stat"><div class="k">Budget used</div><div class="v" id="pct">—</div></div>
|
||
</div>
|
||
<div class="verdict" id="verdict">Recommended class allowance based on your selection.</div>
|
||
<div class="marginalia">Model: dose = lux × hours/day × days/year. The CIE 157 cap for a permanently displayed light-sensitive object is a 50-lux, 500-hours-per-year ceiling — a budget of <b>25,000 lux-hours annually</b>. Everything above assumes you also hold UV filtering and daylight diffusers; this sheet covers dose only.</div>
|
||
</div>
|
||
|
||
<h2><span class="num">III.</span>Why lux-hours, not lux</h2>
|
||
<p>A common desk error: ruling a gallery "safe at 50 lux" and walking away. The damage function for most fugitive colourants is roughly linear in dose — the same yellowing happens at 50 lux for ten years and 100 lux for five. Standards bodies therefore set <i>annual dose budgets</i>, then let the registrar trade lux against hours as the run's scheduling requires.</p>
|
||
|
||
<table>
|
||
<tr><th>Class</th><th>Practical lux ceiling</th><th>Recommended annual dose budget</th><th>Note</th></tr>
|
||
<tr><td>A</td><td>50 lx</td><td class="dose-notice">25,000 lx·hr</td><td class="u">CIE 157: ≤500 display-hours/yr at 50 lux</td></tr>
|
||
<tr><td>B</td><td>150 lx</td><td>75,000 lx·hr</td><td class="u">same 500-hr protocol scaled to lux</td></tr>
|
||
<tr><td>C</td><td>300 lx</td><td>150,000 lx·hr</td><td class="u">restricted only by thermal comfort</td></tr>
|
||
<tr><td>D</td><td>—</td><td>no practical cap</td><td class="u">vitreous enamel / unfired mineral</td></tr>
|
||
</table>
|
||
|
||
<figure class="figure">
|
||
<img src="https://images.pexels.com/photos/19968227/pexels-photo-19968227.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="Warmly lit gallery hung with framed works — the exact rooms this ledger disciplines.">
|
||
<figcaption>Pl. I — the rooms this ledger disciplines.</figcaption>
|
||
</figure>
|
||
|
||
<p class="source">Grounded in references to the <a href="https://cie.co.at/publications/control-damage-museum-objects-optical-radiation" target="_blank" rel="noopener">CIE 157:2004 standard</a> on control of damage to museum objects, and the <a href="https://www.icom-cc.org" target="_blank" rel="noopener">ICOM-CC</a> conservation community's dose-based guidance as abstracted for desk use. Figures are planning numbers for a registrar's ledger, not a conservator's specification.</p>
|
||
|
||
<h2><span class="num">IV.</span>A borrowed thought on restraint</h2>
|
||
<p>My first small film, <i>Lux and Time</i>, argues the same case in ninety seconds — that conservation is the discipline of saying "not yet" and "not so bright." This sheet is its ledger twin. The pair belong together: the film gives the why, this tool gives the how. <a href="/conservation-ready-spaces.html">The monitoring guide</a> carries the environmental paperwork.</p>
|
||
<p>Machines can read the model too — the data twin lives at <a href="/light-budget.json">light-budget.json</a>.</p>
|
||
|
||
<div class="foot">
|
||
<span>Anna Martinez · anna-martinez.4ort.net</span>
|
||
<span><a href="/">home</a> · <a href="/conservation-ready-spaces.html">monitoring guide</a> · <a href="/quiet-discipline.html">quiet discipline</a></span>
|
||
</div>
|
||
</div>
|
||
<a class="jsonlink" href="/light-budget.json">DATA .JSON</a>
|
||
|
||
<script>
|
||
(function(){
|
||
var luxEl=document.getElementById('lux'),
|
||
hrEl=document.getElementById('hours'),
|
||
dayEl=document.getElementById('days'),
|
||
clsEl=document.getElementById('class'),
|
||
doseEl=document.getElementById('dose'),
|
||
allowEl=document.getElementById('allowed'),
|
||
pctEl=document.getElementById('pct'),
|
||
vEl=document.getElementById('verdict');
|
||
var LIMITS={A:25000,B:75000,C:150000,D:Infinity};
|
||
var LUXCAP={A:50,B:150,C:300,D:null};
|
||
function fmt(n){
|
||
if(n===Infinity)return "—";
|
||
return n.toLocaleString('en-US');
|
||
}
|
||
function calc(){
|
||
var lux=parseFloat(luxEl.value)||0,
|
||
hr=parseFloat(hrEl.value)||0,
|
||
days=parseFloat(dayEl.value)||0,
|
||
cls=clsEl.value;
|
||
var dose=lux*hr*days;
|
||
var cap=LIMITS[cls];
|
||
doseEl.textContent=fmt(dose);
|
||
allowEl.textContent=cap===Infinity?"no cap":fmt(cap);
|
||
var pct=cap===Infinity?0:(dose/cap*100);
|
||
var pctStr=cap===Infinity?"0%":Math.round(pct)+"%";
|
||
pctEl.textContent=pctStr;
|
||
var luxOk=(LUXCAP[cls]===null)||lux<=LUXCAP[cls];
|
||
if(cap===Infinity){
|
||
vEl.innerHTML="<b>Durable class.</b> No practical dose limit by light alone; check heat load and UV. The run is governed by building and frame, not photochemistry.";
|
||
}else if(!luxOk){
|
||
vEl.innerHTML="<b class='dose-notice'>Above class ceiling.</b> "+fmt(lux)+" lux exceeds the "+fmt(LUXCAP[cls])+" lux ceiling for class "+cls+" — spectral tail risk beyond dose. Bring the illuminance down before budgeting hours.";
|
||
}else if(pct<=100){
|
||
vEl.innerHTML="<b>Within budget.</b> This run consumes "+pctStr+" of the class "+cls+" annual dose allowance. Log it in the condition file; leave headroom for photography and the next lender.";
|
||
}else{
|
||
vEl.innerHTML="<b class='dose-notice'>Over budget.</b> "+pctStr+" of the annual allowance in this run alone. Either cut display hours, drop illuminance, or rotate the object off-gallery — continuing burns the work's lifetime allowance early.";
|
||
}
|
||
}
|
||
['lux','hours','days','class'].forEach(function(id){
|
||
document.getElementById(id).addEventListener('input',calc);
|
||
document.getElementById(id).addEventListener('change',calc);
|
||
});
|
||
calc();
|
||
})();
|
||
</script>
|
||
</body>
|
||
</html> |