# Plan F7: soluciones en vivo — sal, presión, ósmosis, electricidad y apantallamiento > **Qué es este documento**: el plan de desarrollo de las subfases F7a–F7e (y su vía de rigor con OpenMM) que nacieron de las preguntas P19–P25 del cuaderno: ¿podemos ver sal disolviéndose, medir la presión, hacer ósmosis con paredes virtuales, aplicar un campo eléctrico y ver el apantallamiento de Debye emerger de iones de verdad? Sí a todo, con la misma física de P19 y sin cuántica. Aquí está el cómo, el orden, las teclas, el número que valida cada experimento y el experimento de cocina que lo acompaña. Complementa la hoja de ruta v2 (`ADN_simulador_fisica_atomica.md`, sección 10) sin sustituirla: **F7 (fusión térmica) y F8 (la nave) siguen donde estaban**. > > Escrito el 02/09/2026 con OpenMM 8.6 instalado en la máquina (el último publicado), el motor JS de F2/F3 tal como está y la producción de 100 ns de F5 al 80 %. > > **Estado (02/09/2026, noche): F7a–F7e ENTREGADAS** en `soluciones.html` (+ `campo7.js`), con tarjetas en el índice y los valores medidos en la entrada P29 del cuaderno. Cambios respecto a lo planificado, aprendidos al probar: (1) el campo eléctrico actúa por defecto **solo sobre los iones**, porque aplicado a todas las cargas la gota se polariza como un dieléctrico en vacío y el campo interior cae a 3E/(ε+2) ≈ E/27 (la deriva desaparece; la tecla 3 lo enseña); (2) en modo circuito el «electrodo» está en la superficie de la gota, no en la burbuja (un ion hidratado no sale del líquido); (3) la presión osmótica necesita que los iones lleguen a la pared: con D ≈ 0,1 Ų/ps tardan decenas de ps, así que el pistón es la demostración rápida y la media de π la lenta; (4) ósmosis con 160 aguas por rendimiento (0,2 ps/s en vivo con ~500 átomos). Pendiente de este plan: la vía de rigor (`f7_simular.py`, pasos 7–9). --- ## 0. Resumen en una pantalla | Subfase | Experimento | Se ve en vivo | Número que lo valida | En casa | |---|---|---|---|---| | **F7a** | Presión: manómetro en la pared + burbuja que se encoge/agranda | la gota casi incompresible; vapor al expandir | densidad a P≈0 ≈ 0,98–1,00 g/cm³; comprimir 5 % ≈ 1 kbar | jeringa tapada: el aire cede, el agua no | | **F7b** | Sal: un cristalito de NaCl en la gota, teclas ± sal, K⁺, Mg²⁺, soluto neutro | esquinas que caen, capas de hidratación, el cristal redondeándose | ~6 aguas alrededor de cada Na⁺ (O hacia dentro); ΔH disolución ≈ +4 kJ/mol | disolver sal y azúcar; el termómetro baja un par de grados | | **F7c** | Ósmosis: pared virtual que solo frena iones + pistón/manómetro; ósmosis inversa | el agua cruza hacia la sal; el pistón empuja; desalación al apretar | π medida vs van 't Hoff (1 M ≈ 46–50 bar) y **la misma π con soluto neutro** | patata/pepino/huevo sin cáscara en agua salada vs dulce, pesados antes y después | | **F7d** | Campo eléctrico: teclas ± E, modo condensador y modo circuito | Na⁺ y Cl⁻ separándose, doble capa, corriente | movilidad Na⁺ ≈ 5·10⁻⁸ m²/V·s (Cl⁻ 1,5× más rápido); conductividad ∝ sal | multímetro o LED + pila de 9 V: brilla más con más sal (segundos, ventilado) | | **F7e** | Apantallamiento de Debye visto: una carga fija rodeada de iones | la nube de contraiones; el campo (capa F4) muriendo a λ_D | perfil de iones ∝ e^(−r/λ_D); λ_D(150 mM) ≈ 8 Å; comparar con el modo J de F6 | — (pero **es** la atmósfera iónica del ADN de F5) | | **F7-rigor** | Los mismos cuatro en OpenMM + el reproductor con aguas visibles | películas de ns | solubilidad, π(c), Λ(c) de Kohlrausch, condensación de Manning en la F5 ya grabada | — | **Un visor nuevo, `soluciones.html`**, parametrizable por URL (`?exp=presion|sal|osmosis|campo|debye`) y por teclas, que **copia** el motor de F2 (no lo modifica: cada fase queda como cerró) y **reutiliza sin tocar** la capa de campos `campo.js`. Todo lento pero en vivo: entre 0,1 y 0,5 ps de realidad por segundo de pantalla. --- ## 1. Principios de diseño (los mismos del proyecto) 1. **No desmontar nada.** `sandbox.html`, `bases.html`, `campos.html` y `trayectoria.html` no se tocan. El visor nuevo nace copiando `sandbox.html` (motor de agua) y añadiendo lo nuevo en secciones marcadas. Si un experimento necesita el mismo motor con otro contenido, es un `?exp=` distinto, no un fichero distinto; si en el futuro un experimento exige cambiar el motor, se copia otra vez (F7x → `soluciones2.html`). 2. **Una incógnita por subfase** (P2). F7a solo añade instrumento (presión) y un mando (radio). F7b añade iones. F7c añade una pared selectiva. F7d añade un campo. F7e no añade física: solo una carga fija y un medidor. 3. **Cada experimento tiene su número.** Como F2 tuvo los ~3 puentes por molécula y F5 el RMSD, cada subfase declara arriba qué cantidad medida debe salir y contra qué dato real se compara. Si no sale, primero se sospecha del modelo (P: cutoffs, termostato, tamaño), no de la naturaleza. 4. **Mismas unidades y convenciones que F2**: Å, fs, kJ/mol, uma, e; `ACC`, `KB`, `COUL`; velocity-Verlet + Langevin. Nombres globales que `campo.js` necesita (`gl, pos, q_, NAT, NAGUA, R_PARED, eye, qc, proj, COUL, makeProgram, qRotate, viewMatrix`): el visor nuevo los expone con esos nombres exactos, como hace `bases.html`. 5. **Dos vías por experimento**: en vivo (JS, cientos de átomos, lo que se *entiende*) y rigor (OpenMM, miles de átomos, lo que se *mide bien*). El reproductor `trayectoria.html` se extiende para mostrar aguas e iones nuevos; el formato `CELL1` se conserva. 6. **Honestidad sobre lo que no puede salir** (sección 7): electrólisis, pH, hielo, Mg²⁺ fino, polarización. Y una regla para el laboratorio de cocina: **el peligro de un experimento lo decide la realidad, no nuestro modelo** (sección 8). --- ## 2. Física nueva que hay que añadir al motor (una vez, para todas las subfases) ### 2.1 Iones: dos líneas de parámetros por especie Los parámetros son **exactamente los que ya usa F5**: están en `amber14/tip3p.xml` de tu instalación de OpenMM (monovalentes de Joung–Cheatham 2008, divalentes de Li–Merz 12-6), convertidos de nm/kJ a Å/kJ. Cada ion es un átomo más del array global con carga neta, sin muelles. | Especie | masa (uma) | q (e) | σ (Å) | ε (kJ/mol) | Comentario | |---|---|---|---|---|---| | Na⁺ | 22,99 | +1 | 2,439 | 0,366 | el de la sal de mesa | | Cl⁻ | 35,45 | −1 | 4,478 | 0,149 | grande y blando | | K⁺ | 39,10 | +1 | 3,038 | 0,810 | el catión de dentro de la célula | | Li⁺ | 6,94 | +1 | 1,826 | 0,117 | diminuto, hidratación férrea (opcional) | | Mg²⁺ | 24,31 | +2 | 2,423 | 0,043 | **con aviso**: en clásico se pega demasiado a los fosfatos (P23) | | Ca²⁺ | 40,08 | +2 | 2,938 | 0,443 | opcional | | «soluto neutro» | 60 | 0 | 4,0 | 0,5 | esfera sin carga, el «azúcar de juguete» de F7c | Mezcla con el agua por Lorentz–Berthelot, igual que ahora. Cutoff: **ninguno dentro de la burbuja** (poner el corte a 2·R_PARED). Con cargas netas, un corte brusco a 12 Å crea saltos de fuerza y calienta; el bucle ya es O(N²), así que calcular todos los pares no cuesta más. ### 2.2 El cristal de NaCl Red de sal de roca: cubo de arista 5,64 Å con Na⁺ y Cl⁻ alternando en los vértices de una red cúbica de paso 2,82 Å. Constructor `cristal(nx, ny, nz)` que coloca los iones alternando por paridad de (i+j+k). **Usar bloques con número par de sitios** para que el cristal sea neutro: 2×2×2 (8 iones), 2×2×3 (12), 2×3×4 (24), 4×4×4 (64). Las aguas se colocan en la red de F2 evitando el cristal (como `bases.html` evita las bases). ### 2.3 Concentración: cuántos pares de iones caben en una gota La burbuja es pequeña y esto manda sobre el diseño. Molalidad ≈ 55,5 · pares / aguas. | Pares NaCl | Aguas | Molalidad (mol/kg) | Qué es | |---|---|---|---| | 1 | 370 | 0,15 | fisiológica: **un solo par** en una gota grande; inviable en vivo | | 1 | 150 | 0,37 | la mínima resolución de la gota estándar | | 3 | 150 | 1,1 | ~1 M: lo útil para ósmosis y Debye | | 6 | 150 | 2,2 | cristalito 2×2×3 disuelto del todo: por debajo de saturación | | 12 | 200 | 3,3 | cristal 2×3×4: cerca de la saturación *del modelo* (~3,7) | | 32 | 500 | 3,6 | cristal 4×4×4: ya solo en la vía de rigor | | — | — | 6,1 | saturación real a 25 °C | Consecuencia: la gota en vivo trabaja a concentraciones de **1–3 mol/kg**, muy por encima de lo fisiológico. Es honesto y es lo que hacen los experimentos de cocina (agua de mar es 0,6; una salmuera, 5–6). ### 2.4 Paredes virtuales selectivas (F7c) y pistón Un plano `x = xP` con potencial semiarmónico `½K(x−xP)²` que actúa **solo sobre las especies elegidas** (iones; o solo Na⁺; o solo Cl⁻; el agua nunca). Es el método de Luo y Roux (J. Phys. Chem. Lett. 2010): la fuerza media que los iones ejercen sobre el plano, dividida por el área del disco que corta la burbuja (πR²), **es la presión osmótica**. Lectura en bar: 1 kJ/mol/Å = 1,66·10⁻¹¹ N; 1 bar = 10⁵ Pa. Con 3 pares en 150 aguas (≈1 M) la fuerza media sobre el disco es de ~2 kJ/mol/Å frente a fluctuaciones de decenas: hace falta **promediar ~100 ps** (una barra de manómetro con media móvil). Modo **pistón**: el plano tiene una fuerza externa `F_ext` (teclas) y se mueve sobreamortiguado, `xP += μ·(F_iones + F_ext)·Δt`. Equilibrio cuando `F_ext = −π·A`. Si `F_ext` supera eso, el plano invade el lado salado, el agua lo atraviesa hacia el lado puro y el lado salado se concentra: **ósmosis inversa** (desalación) en vivo. Contador de aguas e iones por lado en el HUD. ### 2.5 Campo eléctrico uniforme (F7d) Fuerza `F = q·E` sobre **todas** las cargas (también las parciales del agua: así el agua se polariza y reduce el campo interno, que es la respuesta dieléctrica real). Unidades: E en V/nm; 1 e·V = 96,485 kJ/mol ⇒ `F[kJ/mol/Å] = 9,6485 · q[e] · E[V/nm]`. | E aplicado | Qué pasa | Referencia | |---|---|---| | 10 V/cm | un gel de electroforesis real | 10⁻⁶ V/nm: invisible en ns | | 0,1 V/nm | régimen lineal de los papers; Na⁺ deriva ~5 nm/ns | a 0,2 ps/s tarda media hora en cruzar la gota | | **1 V/nm** | **el mando por defecto en vivo**: ~50 nm/ns, cruza la gota en ~40 ps (≈2–3 min de pantalla) | la burbuja de 3 nm tiene 3 V entre extremos, como una pila | | 3,5 V/nm | la realidad rompe el agua (dinámica ab initio); nuestro modelo no lo sabe | tope duro del mando, con aviso en el HUD | Dos modos, tecla para alternar: - **Condensador** (por defecto): los iones se apilan contra la pared de cada lado, se forma la **doble capa** y el campo interno se cancela. Con la capa F4 (tecla V) se ve el potencial aplanarse dentro de la gota. La corriente `I = Σ qᵢ·vₓᵢ` decae a cero: un condensador cargándose. - **Circuito**: un ion que toca la pared del lado hacia el que deriva reaparece en la pared opuesta (lo que hace la caja periódica en la vía de rigor). Corriente estacionaria; de ella sale la movilidad `u = ⟨vₓ⟩/E` y la conductividad. **Termostato y movilidad**: la fricción de Langevin frena la deriva y falsea la movilidad. En F7d el termostato actúa **solo sobre el agua** (el agua es el baño; los iones se termalizan chocando con ella) y con γ = 1/ps (0,001/fs, como F5) en vez del 10/ps de F2. El calentamiento Joule lo absorbe el termostato, como lo absorbe la mesa en el experimento real. ### 2.6 Instrumentos (HUD y medidores) - **Presión de pared** `P = ⟨Σ F_pared·r̂⟩ / (4πR²)` en bar, media móvil de 50–100 ps. (F7a) - **Hidratación**: aguas con O a < 3,2 Å de cada Na⁺ y con H a < 2,9 Å de cada Cl⁻; media por ion. Dibujar las líneas ion–O/H en un color propio. (F7b) - **Fracción disuelta**: ion con < 3 contraiones a < 3,5 Å = disuelto. (F7b) - **Calor de disolución**: energía acumulada que ha inyectado el termostato desde el reinicio, en kJ/mol por par de iones disuelto. Debe salir positiva y pequeña (≈ +4). (F7b) - **Aguas e iones por compartimento**, **fuerza media sobre la pared iónica** en bar, posición del pistón. (F7c) - **Corriente** `Σ q·vₓ`, **deriva media** por especie, **dipolo total** de la gota. (F7d) - **Perfil radial** `n(r)` de iones alrededor de la carga fija, acumulado en el tiempo; ajuste a `A·e^(−r/λ)` y comparación con λ_D = 3,04/√(c[M]) Å. (F7e) ### 2.7 Rendimiento (honesto) El bucle de pares es O(N²) y en una gota de 15–20 Å de radio las listas de celdas **no ayudan** (el cutoff cubre casi toda la gota). Presupuesto: ≤ ~600 átomos para seguir «en vivo». | Sistema | Átomos | Coste relativo a F2 | ps/s estimados (20 pasos/frame) | |---|---|---|---| | F2 hoy (100 aguas) | 300 | 1× | ~0,5 | | 150 aguas + 2×2×3 | 462 | 2,4× | ~0,2 | | 200 aguas + 2×3×4 | 624 | 4,3× | ~0,1 | Con `,`/`.` (hasta 120 pasos/frame) se multiplica por 3–5 a cambio de fluidez. Es «lento pero en vivo». Si algún día queremos 2.000 átomos en vivo, el camino es **WebGPU** (compute shader para el bucle de pares; es lo que hace Atomify con LAMMPS en WebAssembly), como «motor v3» opcional fuera de este plan. --- ## 3. Las subfases, una a una ### F7a — Presión: el manómetro y el mando del volumen - **Qué se añade**: lectura de presión de pared en el HUD; teclas `[` / `]` para encoger/agrandar `R_PARED` un 2 %; `pos` no se reescala (es la pared la que se mueve: como un émbolo). - **Qué se ve**: al encoger un 5 % la presión se dispara a ~10³ bar (el agua no cede: el muro de Pauli de cada molécula empuja al vecino). Al agrandar, la presión cae a ~0 y luego aparecen moléculas sueltas en el hueco: vapor (P5), la gota «hierve» por presión y no por temperatura. - **Número**: el radio al que P ≈ 0 da la densidad emergente de nuestro TIP3P flexible: ~0,98–1,00 g/cm³ (F2 la impuso al colocar la red; aquí se mide). Comprimir 5 % ≈ 1 kbar (módulo de compresibilidad 2,2 GPa). - **En casa**: jeringa tapada con el dedo: aire → se comprime; agua → no. El vapor al expandir es la cavitación de una jeringa con agua a la que se tira del émbolo. - **Coste**: 1 sesión. Es también el instrumento de F7c. ### F7b — La sal: el cristalito que se deshace - **URL**: `soluciones.html?exp=sal&aguas=150&cristal=2x2x3&T=300`. - **Teclas**: `+`/`-` añadir/quitar un par de iones sueltos (en un hueco libre, al azar); `T` cambiar la especie del siguiente par (NaCl → KCl → MgCl₂ → neutro); `Z` volver a poner el cristal; `4` líneas de hidratación; `6` ocultar el agua (ver solo los iones); `1`/`2` esferas/varillas como siempre. - **Qué se ve** (en minutos de reloj): los iones de las esquinas (3 vecinos) se van primero, luego aristas (4), luego caras (5); cada Na⁺ que sale se lleva ~6 aguas con el O hacia él; cada Cl⁻ se rodea de H; el cristal se redondea (Lanaro & Patey 2015 lo describen en tres etapas) y a 2,2 mol/kg acaba disuelto del todo. Subir a 400 K con ↑ acelera la cinética. Con 12 pares en 150 aguas (4,4 mol/kg, por encima de la saturación del modelo) el cristal **deja de encoger**: equilibrio, y a veces recaptura iones. - **Números**: hidratación ~6 (Na⁺) y ~6–7 (Cl⁻); calor de disolución positivo y pequeño (empate energético, gana la entropía); K⁺ suelta sus aguas más fácilmente que Na⁺ (por eso, pese a ser más grande, se mueve más rápido en F7d). - **En casa (seguro)**: sal en agua fría y caliente (el NaCl disuelve casi lo mismo a cualquier T porque su ΔH ≈ 0: es van 't Hoff en la cocina; el azúcar, con ΔH grande, cambia mucho). Termómetro digital: la salmuera baja 1–3 °C al disolver. Comparar con la lectura de «calor de disolución» del HUD. - **Coste**: 1–2 sesiones (iones + cristal + medidores). ### F7c — Ósmosis con paredes virtuales, y ósmosis inversa - **URL**: `soluciones.html?exp=osmosis&aguas=200&sal=4` (4 pares a la izquierda de la pared, agua pura a la derecha). - **Teclas**: `G` pared iónica on/off; `Y`/`U` fuerza externa del pistón −/+; `T` cambiar la sal por **soluto neutro** con el mismo número de partículas; `+`/`-` más/menos soluto. - **Qué se ve**: con la pared, el agua sigue cruzando libremente, pero la densidad de agua del lado salado sube un poco y la presión sobre la pared de la burbuja de ese lado también: el manómetro de F7a por hemisferios enseña la diferencia. Con el pistón libre, los iones lo empujan hacia el lado puro. Al apretar el pistón por encima de π·A, el agua se escapa al lado puro: **desalación**. Al cambiar NaCl por esferas neutras, **π no cambia**: propiedad coligativa, solo cuenta el número. - **Números**: van 't Hoff π = i·c·R·T. A 1 M y 300 K: 49,9 bar ideal, ~46 real (coeficiente osmótico 0,93). A 2 M, ~97. A 150 mM (plasma), 7,3 bar. Con 4 pares en 200 aguas (≈1,1 M) esperamos 50 ± 10 bar tras 100–200 ps de promedio. - **En casa (seguro)**: rodajas de patata o pepino pesadas antes y después de 1–2 h en agua pura, agua con 1, 2 y 3 cucharadas de sal por litro, y lo mismo con azúcar. Ganan masa en agua pura (entra agua), la pierden en salmuera, y hay una concentración a la que no cambian: la isotónica (~0,15–0,3 M según el tejido). Huevo sin cáscara (48 h en vinagre) en agua vs sirope: se hincha o se arruga. Con la balanza de cocina sale una curva masa vs concentración para comparar con la π(c) del sandbox. - **Coste**: 1–2 sesiones. ### F7d — Campo eléctrico: electroforesis, doble capa y conductividad - **URL**: `soluciones.html?exp=campo&aguas=150&sal=4&E=1`. - **Teclas**: `←`/`→` E −/+ 0,25 V/nm (tope 3,5 con aviso); `0` E = 0; `F` alternar condensador/circuito; `V` la capa F4 para ver el potencial; `4` hidratación (los iones arrastran su capa: por eso Na⁺ va más lento que K⁺). - **Qué se ve**: al conectar E, los Na⁺ van a un lado y los Cl⁻ al otro con temblor browniano superpuesto; el agua se orienta; en modo condensador se forma la doble capa y el potencial dentro se aplana (tecla V); en modo circuito hay corriente estable y el HUD da movilidad y conductividad. Con más sal (`+`), más corriente. Con E ≥ 2 V/nm el agua se alinea tanto que la red de puentes se rompe: el HUD lo cuenta. - **Números**: movilidad Na⁺ ≈ 5,2·10⁻⁸ m²/V·s, Cl⁻ ≈ 7,9·10⁻⁸ (a 25 °C, dilución infinita); conductividad molar del NaCl ≈ 107 S·cm²/mol a 0,1 M (Kohlrausch). Los modelos clásicos suelen quedar un 10–30 % por debajo (Charge Transport in Water–NaCl Electrolytes, J. Phys. Chem. B 2023): si sale eso, está bien. - **En casa (con precaución, sección 8)**: multímetro en ohmios entre dos clavos en un vaso: la resistencia cae al añadir sal. O LED + pila de 9 V: brilla más con más sal. **Segundos, no minutos, y ventilado**: con NaCl los electrodos hacen un poco de cloro/hipoclorito. Alternativa sin cloro: bicarbonato o sal de Epsom. Nunca red eléctrica, nunca recipientes cerrados (hidrógeno). - **Coste**: 1 sesión. ### F7e — El apantallamiento de Debye, visto de verdad - **URL**: `soluciones.html?exp=debye&aguas=150&sal=3&q=-2` (una esfera fija de carga −2 en el centro: un «fosfato doble»; o `q=-1`). - **Teclas**: `+`/`-` sal; `7`/`8` como en F6 para el λ_D analítico de referencia; `V` capa de campo con los iones incluidos; `5` panel del perfil radial. - **Qué se ve**: los Na⁺ se arremolinan alrededor de la carga (atmósfera iónica), los Cl⁻ se apartan; la isosuperficie del potencial se encoge al añadir sal; el perfil `n(r)` acumulado decae exponencialmente. Es **F6 sin suponer nada**: allí el apantallamiento era una fórmula (modo J); aquí emerge de iones que chocan. - **Números**: λ_D = 3,04/√c Å: 7,8 Å a 150 mM, 3,0 Å a 1 M. Con 3–6 pares en la gota el perfil necesita 200–500 ps de promedio (10–30 min de pantalla, o `.` a fondo). - **Y la conexión con el ADN**: la vía de rigor de esta subfase **no necesita simular nada nuevo**: la trayectoria F5 ya contiene 22 Na⁺ + NaCl 150 mM alrededor del 1BNA. Un script de análisis mide cuántos Na⁺ hay a < 5 Å de los fosfatos (la condensación de Manning predice que ~76 % de la carga del ADN queda neutralizada por contraiones condensados) y el perfil radial de Na⁺ y Cl⁻ desde el eje de la hélice. Se pinta en `trayectoria.html` con una tecla nueva. - **Coste**: 1 sesión (+ 1 para el análisis de F5). --- ## 4. La vía de rigor: `f7_simular.py` y el reproductor con aguas Un guion hermano de `f5_simular.py` (misma estructura: plataforma, checkpoint, `CELL1`, `--resume`), con `--exp sal|osmosis|campo`: | `--exp` | Sistema | Fuerzas extra en OpenMM | Salida y validación | |---|---|---|---| | `sal` | cristal 6×6×6 (216 iones) en ~3.000 aguas TIP3P, caja PBC, 310 K, 1 bar, 20–50 ns | ninguna | película de la disolución; fracción disuelta vs t; iones en la capa de hidratación; comparar con la solubilidad del modelo (~3,7 mol/kg) | | `osmosis` | caja alargada; ~1–2 M en el tercio central; 2 paredes | `CustomExternalForce` semiarmónica solo sobre iones (Luo & Roux) | π(c) a 0,5/1/2/3 M contra los coeficientes osmóticos experimentales; la misma curva con esferas neutras | | `campo` | NaCl 0,5–2 M, PBC, E = 0,1 V/nm en x | `CustomExternalForce('-q*E*x')` con `q` por partícula | movilidades, conductividad molar Λ(c) vs Kohlrausch; comprobar la linealidad entre 0,05 y 0,2 V/nm | `trayectoria.html` necesita: (1) códigos nuevos en `CELL1` (K = 7, Mg = 8, soluto neutro = 9; O/H del agua ya son 2 y 4), (2) tecla para mostrar/ocultar aguas (hoy están fuera del `.bin` de F5), (3) tamaños de esfera por código. Tamaño: 2.000 aguas + 216 iones ≈ 6.200 átomos × 12 B = 75 KB por fotograma; 1.000 fotogramas = 75 MB, dentro del límite práctico de P17. Coste GPU (GTX 1650, ~18.000 átomos a ~100 ns/día en F5): sistemas de 6.000–10.000 átomos irán a 200–300 ns/día; cada experimento de rigor son **1–4 horas** de GPU, interrumpibles. --- ## 5. Catálogo de experimentos adicionales (con sus teclas y su versión de cocina) Ideas que salen gratis o casi con el motor de la sección 2. Cada una con su número y su experimento casero cuando lo hay. | # | Experimento | Cómo en el sandbox | Número | En casa | |---|---|---|---|---| | E1 | **Difusión: la tinta en agua fría y caliente** | `exp=sal` sin cristal: 6 pares a un lado, sin pared; medir el desplazamiento cuadrático medio → D | D(Na⁺) = 1,33·10⁻⁹ m²/s, D(Cl⁻) = 2,0·10⁻⁹ a 25 °C; ×~2 de 20 a 60 °C | gota de colorante en dos vasos, uno frío y otro caliente (seguro) | | E2 | **Na⁺ contra K⁺: por qué el pequeño va más lento** | F7d con `T`: comparar deriva y aguas arrastradas | u(K⁺) ≈ 7,6·10⁻⁸ > u(Na⁺) ≈ 5,2·10⁻⁸ | — | | E3 | **Coligativas: sal vs esferas neutras** | F7c con `T`: misma π con el mismo número de partículas; con MgCl₂ (3 partículas por fórmula) π sube ×1,5 | van 't Hoff con i = 2 (NaCl), 3 (MgCl₂), 1 (azúcar) | patata en 1 M de azúcar vs 0,5 M de sal: mismo efecto | | E4 | **Presión de vapor con sal (Raoult)** | gota a 450–500 K (P5) con y sin sal: contar moléculas sueltas fuera de la gota | menos vapor con sal (los iones no se evaporan) | la salmuera saturada hierve a ~106–108 °C: termómetro de cocina (cuidado con las salpicaduras) | | E5 | **Solubilidad y saturación** | añadir pares con `+` hasta que el cristal deje de encoger o aparezcan pares de contacto Na⁺Cl⁻ que no se separan | saturación del modelo ~3,7 mol/kg (real 6,1: límite honesto conocido) | añadir sal a un vaso hasta que quede poso; pesar cuánto entra en 100 g | | E6 | **Empate energético de la sal** | HUD del calor del termostato al disolver | ΔH ≈ +4 kJ/mol por par (endotérmica pero espontánea: entropía) | el termómetro baja 1–3 °C | | E7 | **La doble capa como condensador** | F7d modo condensador: conectar, esperar, desconectar (`0`): los iones se relajan y el dipolo vuelve a cero | tiempo de relajación ~ps | — | | E8 | **Ósmosis inversa: cuánta fuerza cuesta desalar** | F7c: `U` hasta que el agua fluya al lado puro; leer F_ext/A | debe superar π: ~50 bar a 1 M, ~27 bar para agua de mar | — (es lo que hacen las desaladoras) | | E9 | **Mg²⁺ y el fosfato** | F7e con `q=-1` y MgCl₂ | el Mg²⁺ se pega al fosfato mucho más que el Na⁺ (y en clásico, demasiado: P23) | — | | E10 | **Hidratación al detalle** | `6` ocultar agua salvo la capa de hidratación; capa F4 para ver el campo del ion «vestido» | ~6 aguas, O a 2,4 Å del Na⁺; H a 2,2 Å del Cl⁻ | — | | E11 | **Sal + calor: cinética** | F7b a 300 vs 400 K: tiempo hasta 50 % disuelto | Arrhenius (P15): ×3–5 más rápido | sal en agua fría vs caliente, con cronómetro y sin remover | | E12 | **Atmósfera iónica del ADN (rigor)** | análisis de la F5 grabada | ~76 % de neutralización (Manning); Na⁺ en el surco menor de AATT | — | --- ## 6. Orden de implementación y estimación | Paso | Entregable | Sesiones | Depende de | |---|---|---|---| | 1 | ✓ `soluciones.html` copiado de F2 + tabla de especies + manómetro + `[`/`]` (**F7a**) | 1 | — | | 2 | ✓ iones, cristal, hidratación, calor del baño, teclas `+ - T Z 4 6` (**F7b**) | 1–2 | 1 | | 3 | ✓ pared selectiva, pistón, soluto neutro, contadores por lado (**F7c**) | 1–2 | 2 | | 4 | ✓ campo E, dos modos, corriente, termostato solo-agua, capa F4 enganchada (`campo7.js`) (**F7d**) | 1 | 2 | | 5 | ✓ carga fija, perfil radial, comparación con λ_D (**F7e**) | 1 | 2 | | 6 | ✓ tarjetas nuevas en `index.html` (una por `?exp=`) y capturas | ½ | 1–5 | | 7 | `f7_simular.py --exp sal` + `trayectoria.html` con aguas (**rigor 1**) | 1–2 | — | | 8 | `--exp osmosis` y `--exp campo` (**rigor 2**) | 1–2 | 7 | | 9 | análisis de la F5 grabada: atmósfera iónica (**E12**) | 1 | F5 terminada | | 10 | cuaderno: entradas con los resultados medidos de cada subfase | continuo | — | Total: **9–12 sesiones**. F7 (fusión térmica) puede ir antes, después o intercalada: no comparte código con esto (usa F5/OpenMM). **Criterio de «hecho» de cada subfase**: (1) el visor abre desde el índice con sus parámetros, (2) el HUD muestra el número declarado en la sección 0, (3) hay una captura en `capturas/` y (4) una entrada en el cuaderno con el valor medido contra el real. --- ## 7. Lo que este plan NO hace, y por qué (para no prometer de más) | No | Por qué | Salida si algún día se quiere | |---|---|---| | **Electrólisis** (H₂, Cl₂, O₂ en los electrodos) | transferencia de electrones y ruptura de enlaces: sin electrones no hay con qué (P24) | `ConstantPotentialForce` de OpenMM 8.4 modela electrodos metálicos, pero no la reacción; reacciones: QM/MM, ReaxFF o potenciales ML | | **pH, H₃O⁺, OH⁻** | el agua no puede autoionizarse con topología fija | igual que arriba | | **Hielo y el punto de congelación con sal** | TIP3P funde a ~146 K y nuclear hielo tarda microsegundos: no se verá cristalizar | TIP4P/Ice + microsegundos de GPU; fuera de escala | | **Mg²⁺ cuantitativo** | polarización (P23): en clásico se une de más | AMOEBA/Drude en OpenMM (×3–10 en coste) | | **Concentraciones fisiológicas en vivo** | 150 mM es un par de iones por 370 aguas: no cabe en la gota | vía de rigor | | **Solubilidad exacta** | los modelos clásicos dan ~3,7 frente a 6,1 mol/kg | límite conocido; se declara | --- ## 8. Seguridad del laboratorio de cocina (léelo antes de reproducir nada) Regla primera: **el peligro lo decide la realidad, no nuestro modelo**. Que no podamos simular la electrólisis no la hace inofensiva; que sí podamos simular la disolución no la hace peligrosa. Nada de lo que aquí se propone requiere las «salidas de mayor ambición» (cuántica): eso es una limitación de la simulación, no un criterio de seguridad. | Experimento | Riesgo real | Precaución | |---|---|---| | Disolver sal/azúcar, termómetro, pesar, colorantes, patata/pepino/huevo | ninguno | — | | Salmuera hirviendo (E4) | quemaduras por salpicadura | cazo alto, termómetro de sonda, no acercar la cara | | Multímetro en ohmios en agua salada | ninguno | — | | LED o bombillita + pila de 9 V en agua con sal | en los electrodos se forma **un poco de cloro e hipoclorito** (olor a lejía) e hidrógeno | segundos, no minutos; ventilado; recipiente abierto; mejor bicarbonato o sal de Epsom; nunca enchufar a la red; nunca pilas grandes de litio | | Electroforesis en gel de agar con colorantes y pilas de 9 V | los mismos electrodos que arriba | mismas precauciones; es un experimento escolar clásico | | Cualquier cosa con corriente de red, ácidos fuertes, lejía + otros productos | quemaduras, gases tóxicos | **no está en este plan** | --- ## 8b. La tercera vía: F9, OpenMM en directo Además del sandbox JS (este plan) y de OpenMM en película (F7-rigor), existe la vía de NanoVer: OpenMM corriendo en la GPU y sirviendo fotogramas al visor mientras las teclas viajan de vuelta a Python. Física completa, 10–50 veces más rápida que el JS para sistemas pequeños, a cambio de tener Python corriendo al lado y una tubería más. Es la fase **F9**, con su propio plan: `plan_F9_directo.md` (electrolito excitable, poro con voltaje, bomba de juguete, visita a la bomba Na⁺/K⁺ real y el músculo a su escala). F7d y F9a comparten la física del campo eléctrico: hacer F7d primero permite comparar las dos vías sobre el mismo experimento. ## 9. Referencias - Joung, I. S.; Cheatham, T. E. *Determination of Alkali and Halide Monovalent Ion Parameters for Use in Explicitly Solvated Biomolecular Simulations*. J. Phys. Chem. B 2008, 112, 9020 — [PMC2652252](https://pmc.ncbi.nlm.nih.gov/articles/PMC2652252/). Son los parámetros de `amber14/tip3p.xml` que ya usa F5. - Lanaro, G.; Patey, G. N. *Molecular Dynamics Simulation of NaCl Dissolution*. J. Phys. Chem. B 2015, 119, 4275 — [ACS](https://pubs.acs.org/doi/abs/10.1021/jp512358s). - Luo, Y.; Roux, B. *Simulation of Osmotic Pressure in Concentrated Aqueous Salt Solutions*. J. Phys. Chem. Lett. 2010, 1, 183 — [resumen](https://research.westernu.edu/luo-lab/publications/simulation-osmotic-pressure-concentrated-aqueous-salt-solutions). - *Charge Transport in Water–NaCl Electrolytes with Molecular Dynamics Simulations*. J. Phys. Chem. B 2023 — [PMC10068734](https://pmc.ncbi.nlm.nih.gov/articles/PMC10068734/): campos de 0,1 a 5 V/nm, respuesta lineal de la deriva, conductividad clásica algo por debajo de la experimental. - OpenMM Cookbook, *Applying a Constant External Force* — [notebook](https://openmm.github.io/openmm-cookbook/dev/notebooks/cookbook/Applying%20a%20Constant%20External%20Force.html); `CustomExternalForce` — [API](https://docs.openmm.org/latest/api-python/generated/openmm.openmm.CustomExternalForce.html). - OpenMM releases (8.4: `ConstantPotentialForce` para electrodos y `QTBIntegrator`; 8.5: `PythonForce` para potenciales ML; 8.6, la instalada aquí) — [GitHub](https://github.com/openmm/openmm/releases). - Entalpía de disolución del NaCl (+3,9 kJ/mol) — [LibreTexts](https://chem.libretexts.org/Courses/Northern_Michigan_University/CH_215:_Chemistry_of_the_Elements_Fall_2023/05:_Solids_and_Solid-State_Chemistry/5.09:_Enthalpy_of_Solution). - Cuaderno: P19 (las cinco leyes), P20 (sal, ósmosis, electricidad), P21 (presión), P23 (polarización), P24 (enlaces), P25 (MD).