Families: mbcurve, gasgraph, piston, realgas — spec JSON beside each figure.
{
"kind": "mbcurve",
"curves": [
{
"label": "N₂ at 300 K",
"vp": 400
}
],
"xmax": 1200,
"xticks": [
0,
200,
400,
600,
800,
1000,
1200
],
"guides": [
{
"v": 400,
"label": "most probable speed — 400 m/s"
}
],
"tail": {
"label": "high-speed tail — a few particles much faster than most"
},
"shade": {
"label": "area under curve = total number of particles"
},
"alt": "Maxwell-Boltzmann distribution for N2 at 300 K with the most probable speed marked at 400 m/s, the high-speed tail arrowed, and the area under the curve shaded as the total number of particles."
}{
"kind": "mbcurve",
"curves": [
{
"label": "neon at 300 K",
"vp": 500
}
],
"xmax": 1250,
"xticks": [
0,
250,
500,
750,
1000,
1250
],
"guides": [
{
"v": 500,
"label": "500 m/s"
}
],
"alt": "Maxwell-Boltzmann distribution for neon at 300 K; a dashed guide drops from the peak to the speed axis at 500 m/s."
}{
"kind": "mbcurve",
"curves": [
{
"label": "one gas sample at one temperature",
"vp": 400
}
],
"xmax": 1200,
"xticks": [
0,
200,
400,
600,
800,
1000,
1200
],
"points": [
{
"v": 600,
"label": "P"
}
],
"alt": "Maxwell-Boltzmann distribution with an open dot labeled P on the curve at 600 m/s, right of the peak."
}{
"kind": "mbcurve",
"curves": [
{
"label": "one gas sample at one temperature",
"vp": 400
}
],
"xmax": 1200,
"xticks": [
0,
200,
400,
600,
800,
1000,
1200
],
"shade": true,
"alt": "Maxwell-Boltzmann distribution with the entire region under the curve lightly shaded and unlabeled."
}{
"kind": "mbcurve",
"curves": [
{
"label": "N₂ at 300 K",
"vp": 400
}
],
"xmax": 1200,
"xticks": [
0,
200,
400,
600,
800,
1000,
1200
],
"regions": [
{
"v1": 600,
"v2": 1180,
"label": "high-speed tail"
}
],
"alt": "Maxwell-Boltzmann distribution with a bracket under the speed axis spanning 600 to 1180 m/s labeled high-speed tail."
}{
"kind": "mbcurve",
"curves": [
{
"label": "N₂ at 300 K",
"vp": 400
},
{
"label": "N₂ at 600 K",
"vp": 560,
"dy": -14
}
],
"xmax": 1600,
"xticks": [
0,
400,
800,
1200,
1600
],
"alt": "Two Maxwell-Boltzmann curves for N2 on one set of axes: the 600 K curve is flatter, shifted toward higher speeds, and equal in area to the 300 K curve."
}{
"kind": "mbcurve",
"curves": [
{
"label": "N₂ at 300 K",
"vp": 400
},
{
"label": "He at 300 K",
"vp": 1060,
"dy": -14
}
],
"xmax": 2600,
"xticks": [
0,
500,
1000,
1500,
2000,
2500
],
"alt": "Maxwell-Boltzmann curves for N2 and He at 300 K: the lighter He curve is shifted toward higher speeds and flatter, with equal area."
}{
"kind": "mbcurve",
"flaw": "symmetric",
"curves": [
{
"label": "N₂ at 300 K",
"vp": 400
}
],
"xmax": 1200,
"xticks": [
0,
200,
400,
600,
800,
1000,
1200
],
"alt": "A flawed Maxwell-Boltzmann model: the curve is drawn bell-symmetric about the peak instead of stretching to the right."
}{
"kind": "mbcurve",
"flaw": "tail-touches-zero-early",
"curves": [
{
"label": "N₂ at 300 K",
"vp": 400
}
],
"xmax": 1200,
"xticks": [
0,
200,
400,
600,
800,
1000,
1200
],
"alt": "A flawed Maxwell-Boltzmann model: the curve slams to zero just past the peak instead of stretching into a long high-speed tail."
}{
"kind": "mbcurve",
"flaw": "starts-above-zero",
"curves": [
{
"label": "N₂ at 300 K",
"vp": 400
}
],
"xmax": 1200,
"xticks": [
0,
200,
400,
600,
800,
1000,
1200
],
"alt": "A flawed Maxwell-Boltzmann model: the curve starts well above zero at zero speed, as if many particles were standing still."
}{
"kind": "mbcurve",
"flaw": "peak-shift-wrong-direction",
"curves": [
{
"label": "N₂ at 300 K",
"vp": 400
},
{
"label": "N₂ at 600 K",
"vp": 560,
"dy": -14
}
],
"xmax": 1600,
"xticks": [
0,
400,
800,
1200,
1600
],
"alt": "A flawed two-temperature comparison: the 600 K curve is drawn with its peak at a LOWER speed than the 300 K curve."
}{
"kind": "gasgraph",
"relationship": "pv",
"alt": "Pressure versus volume for a fixed amount of gas at constant temperature: a falling inverse-proportion curve."
}{
"kind": "gasgraph",
"relationship": "pv",
"xmax": 12,
"ymax": 12,
"through": {
"x": 4,
"y": 6
},
"xticks": [
2,
4,
6,
8,
10,
12
],
"yticks": [
2,
4,
6,
8,
10,
12
],
"points": [
{
"x": 4,
"y": 6,
"label": "A"
},
{
"x": 8,
"y": 3,
"label": "B"
}
],
"guides": {
"x": 8,
"y": 3,
"xtext": "8.0 L",
"ytext": "3.0 atm"
},
"alt": "Pressure versus volume curve through points A at 4 L and 6 atm and B at 8 L and 3 atm, with dashed guides from B to both axes."
}{
"kind": "gasgraph",
"relationship": "pv",
"label": "300 K",
"second": {
"through": {
"x": 5,
"y": 9
},
"label": "600 K"
},
"alt": "Two pressure-versus-volume curves for the same gas sample: the 600 K curve sits above the 300 K curve everywhere."
}{
"kind": "gasgraph",
"relationship": "vt",
"extrapolate": true,
"xmax": 400,
"solidFrom": 150,
"xticks": [
100,
200,
300,
400
],
"alt": "Volume versus Kelvin temperature at constant pressure: a straight line through the origin, solid where data exist and dashed extrapolated back to 0 K."
}{
"kind": "gasgraph",
"relationship": "pt",
"xmax": 600,
"xticks": [
200,
400,
600
],
"alt": "Pressure versus Kelvin temperature at constant volume: a straight line through the origin."
}{
"kind": "gasgraph",
"relationship": "vn",
"xmax": 4,
"ymax": 100,
"through": {
"x": 2,
"y": 48
},
"xticks": [
1,
2,
3,
4
],
"yticks": [
25,
50,
75,
100
],
"guides": {
"x": 2,
"y": 48,
"xtext": "2.0 mol",
"ytext": "48 L"
},
"alt": "Volume versus moles of gas at constant temperature and pressure: a straight line through the origin, with dashed guides marking 48 L at 2.0 mol."
}{
"kind": "gasgraph",
"relationship": "vt",
"flaw": "vt-not-through-origin",
"alt": "A flawed volume-versus-Kelvin-temperature model: the straight line meets the volume axis above zero instead of passing through the origin."
}{
"kind": "gasgraph",
"relationship": "pv",
"flaw": "pv-straight-line",
"alt": "A flawed pressure-versus-volume model: drawn as a straight falling line instead of an inverse-proportion curve."
}{
"kind": "gasgraph",
"relationship": "pv",
"flaw": "curve-wrong-direction",
"alt": "A flawed pressure-versus-volume model: the curve rises with volume instead of falling."
}{
"kind": "piston",
"panels": [
{
"label": "sealed gas sample",
"count": 14,
"streaks": true
}
],
"alt": "A closed cylinder with a movable piston; fourteen gas particles with short motion streaks fill the space below the piston."
}{
"kind": "piston",
"panels": [
{
"label": "particles strike the walls",
"count": 12,
"collisionArrows": true
}
],
"alt": "A gas-filled cylinder with arrows from the particles nearest the left, right, and bottom walls pointing at those walls."
}{
"kind": "piston",
"change": "volume halved",
"panels": [
{
"label": "before",
"count": 12,
"volumeFrac": 1.0
},
{
"label": "after",
"count": 12,
"volumeFrac": 0.5,
"collisionArrows": true
}
],
"alt": "Before and after halving the volume: the same twelve particles in half the space after the piston moves down, with wall-collision arrows emphasized in the smaller volume."
}{
"kind": "piston",
"change": "temperature increased",
"panels": [
{
"label": "cooler",
"count": 12,
"volumeFrac": 0.7,
"streaks": true
},
{
"label": "warmer",
"count": 12,
"volumeFrac": 1.0,
"streaks": "fast"
}
],
"alt": "Before and after heating at constant pressure: the same twelve particles with longer motion streaks push the piston up to a larger volume."
}{
"kind": "piston",
"change": "gas added",
"gasAdded": true,
"panels": [
{
"label": "before",
"count": 8,
"volumeFrac": 0.6
},
{
"label": "after",
"count": 16,
"volumeFrac": 1.0
}
],
"alt": "Before and after adding gas at constant temperature and pressure: twice the particles occupy twice the volume."
}{
"kind": "piston",
"aLabel": "N₂",
"bLabel": "O₂",
"panels": [
{
"label": "mixture at one T and V",
"count": 9,
"countB": 3
}
],
"alt": "A cylinder holding a mixture: nine shaded N2 particles and three unshaded O2 particles mixed throughout the same space."
}{
"kind": "realgas",
"shape": "dip-then-rise",
"gasLabel": "CO₂",
"annotations": {
"dip": "attractions dominate",
"rise": "particle volume dominates"
},
"alt": "PV/nRT versus pressure: the ideal gas is a flat dashed line at 1; the CO2 curve dips below 1 where attractions dominate, then rises above 1 where particle volume dominates."
}{
"kind": "realgas",
"shape": "dip-then-rise",
"gasLabel": "real gas",
"alt": "PV/nRT versus pressure: a real-gas curve that dips below the dashed ideal line at 1 and then rises above it."
}{
"kind": "realgas",
"shape": "rise-only",
"gasLabel": "H₂ at high T",
"alt": "PV/nRT versus pressure for hydrogen at high temperature: the curve never dips below the dashed ideal line at 1 and rises above it as pressure grows."
}