ITADN

Add optional context fields for pKa values (temperature, ionic strength, solvent)

#39Closedrealmarcin 创建于 2025-08-20
R
realmarcincommented
## Problem pKa values are not immutable properties - they depend on the experimental conditions under which they are measured. Currently, the ChemROF schema stores pKa values without capturing the physical parameter context, which can lead to ambiguity and imprecise modeling. ## Background Standard pKa values are typically reported under specific conditions, but these conditions significantly affect the measured values: - **Temperature**: pKa values shift with temperature following the van't Hoff equation. Most tabulated values assume 25°C - **Solvent**: pKa in water vs. non-aqueous solvents can be dramatically different due to polarity effects - **Ionic strength**: Salt concentration affects pKa through electrostatic shielding of charges - **Pressure**: Generally minor effect under standard laboratory conditions (1 atm) ## Proposed Solution Add optional context fields to provide precise physical parameter context for pKa values: ### New Optional Slots ```yaml slots: pka_temperature: range: float description: Temperature in Celsius at which pKa was measured unit: degree Celsius pka_ionic_strength: range: float description: Ionic strength of solution in mol/L unit: M pka_solvent: range: string description: Solvent system for pKa measurement pka_pressure: range: float description: Pressure in atmospheres unit: atm ``` ### Proposed Defaults When context fields are not specified, assume standard conditions: - **Temperature**: 25°C (298.15 K) - **Solvent**: Water (H₂O) - **Pressure**: 1 atm - **Ionic strength**: 0.0 M (zero ionic strength corresponding to distilled water) ### Usage Examples ```yaml # Simple case - uses defaults (25°C, H₂O, 0.1M, 1 atm) pka_values: [3.13, 4.76, 6.40] # Explicit context pka_values: [3.13, 4.76, 6.40] pka_temperature: 37.0 # body temperature pka_ionic_strength: 0.15 # physiological pka_solvent: "water" # Non-aqueous system pka_values: [8.2] pka_solvent: "DMSO" pka_temperature: 25.0 ``` ## Design Considerations 1. **Backwards compatibility**: All context fields are optional - existing pKa data remains valid 2. **Standard assumptions**: Clear documentation of default conditions when context not specified 3. **Literature alignment**: Most database pKa values are at ~25°C in water, fitting the defaults 4. **Flexibility**: Supports specialized conditions (physiological, non-aqueous, etc.) ## Implementation Notes - Consider adding validation that temperatures are in reasonable ranges - Document units clearly (°C vs K, M vs mM for ionic strength) - May want enumerated values for common solvents rather than free text - Could reference external ontologies for solvent terms (CHEBI solvent terms) ## References - Standard conditions: 2012books.lardbucket.org - Temperature dependence: van't Hoff equation, reachdevices.com - Ionic strength effects: electrostatic shielding, researchgate.net @dragon-ai-agent
关闭于 2025-08-21 2 条评论