Overview
Guest occupancy analysis calculates how many cages are occupied by guest molecules versus the total number of detected cages. Clavis reports two occupancy fractions used in the clathrate hydrate literature:- θ_S — occupancy of small cages (5¹²)
- θ_L — occupancy of large cages (5¹²6², 5¹²6⁴)
How It Works
After cage detection (TRACE algorithm), Clavis checks whether each detected cage contains a guest molecule. A guest is considered enclathrated if its position falls within the geometric bounds of a cage.Cross-Layer Guest Detection
If you have loaded guest molecules as a separate layer (a.gro file containing only guest species), Clavis automatically collects those guests and combines them with any guests detected in the primary structure file.
This allows you to analyze systems where water and guests are stored in separate files.
Usage
- Load your
.grofile containing water molecules. - Optionally load a guest
.grofile as a separate layer. - Run TRACE Analysis from the Analysis tab.
- The results panel will display θ_S, θ_L, and per-cage-type occupancy.
Visualization
When the analysis is complete, enable ENCLATHRATED GUESTS in the cage overlay panel to visualize guest molecules as spheres inside cage wireframes. Use the SIZE slider to scale the sphere radius. Only guests that are confirmed enclathrated (i.e.,cage_idx is set) are shown. Free (un-enclathrated) guest molecules are not rendered.
Output
| Field | Description |
|---|---|
θ_S | Fraction of small cages occupied |
θ_L | Fraction of large cages occupied |
Total occupied | Number of cages with at least one guest |
By cage type | Per-type breakdown (5¹², 5¹²6², 5¹²6⁴) |
Trajectory Analysis
When running trajectory analysis, occupancy is computed per frame and plotted in the Occupancy chart. This allows you to track guest capture and release events across a simulation.Notes
- Guest detection relies on the residue names in your
.grofile. Non-water, non-ice residues are treated as guests. - Cross-layer guests are identified by their position in the simulation box.
- Clavis uses
!= nullcomparison (loose equality) to handle RustOption::None→ JavaScriptundefinedserialization from WASM.