About the Simulation
DensityGen is not a JavaScript score toy. The browser sends candidate precursors to the Python pipeline. When real simulation is enabled, the server builds atomic structures with ASE, calls the deployed Replicate UMA model, and feeds the returned energies back into the same scorecard the chemist sees.
What Actually Runs
mol = build_molecule(candidate, composition)
slab = build_metal_slab(film_element)
system = build_adsorption_system(slab, mol)
E_ads = E(system, "oc20") - E(slab, "oc20") - E(mol, "omol")
score_surface_reactivity(..., ads_energy=E_ads)
If a molecule cannot be built as a 3D ASE structure yet, the result says so and falls back to descriptor scoring for that candidate instead of inventing a simulated number.
Technical Flow
Cost Per Call
Replicate bills custom GPU predictions by hardware time. The app estimates real-mode cost from prediction metrics using the A100 rate selected for this demo.
A single candidate may require several predictions: molecule energy, clean slab energy, and slab-plus-adsorbate energy. Slab energy is cached within one request when possible. Private/custom deployments may also incur setup or idle hardware charges depending on Replicate configuration.