Gatewizard

Latest version: v1.0.53

Safety actively analyzes 993520 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 8

1.0.53

Added

- **Analysis:** PlotSpec rendering helpers; structural per-file `file_strides`; energetic log stride helper (`energy_stride`)
- **Tools:** trajectory PBC fixing (`trajectory_tools` / `fix_pbc_worker`) with GROMACS / cpptraj / MDAnalysis paths
- **Equilibration resources:** per-stage CPU/GPU in `equilibration_resources.json` (engine-specific defaults; Amber picks `pmemd` vs `pmemd.cuda` per stage)
- **Equilibration (NAMD):** `gpu_resident` option on `setup_namd_equilibration` — writes `GPUresident` on the production stage only; equilibration keeps `reassignFreq`/`reassignTemp`; persisted on `equilibration_job.json`
- **Cluster mid-run progress:** sync `step*.log` (and related progress files) from node-local scratch → submit directory — batch scripts rsync every 60s; API helper SSHs to the allocated node for Watching/Pull on jobs already running
- **Cluster status:** job-status records allocated CPUs, node name, and node GPU type (from `sinfo` GRES) on `execution` for Watching cards
- **Equilibration job metadata:** if `equilibration_job.json` has only an `execution` block, infer protocol/ensemble/input_dir from `protocol_summary.json` and heal the job JSON (fixes **Use in form** after cluster Watching)
- **Equilibration (remote / Slurm):** `gatewizard.utils.cluster` — module/`sinfo` parsers, workdir strategies (scratch stage-in/out), editable batch templates, Slurm adapter (+ PBS stub), SSH/rsync helpers, and `execution` metadata on `equilibration_job.json`
- **Equilibration dual run scripts:** generate/refresh write `run_equilibration.sh` (local Executable) and `run_equilibration_cluster.sh` (module-friendly `namd3`/`gmx`/`python3`/`pmemd[.cuda]`); Slurm defaults to `bash run_equilibration_cluster.sh`
- **Equilibration failure detection:** scan stage logs / Slurm outs for FATAL / CUDA stub / Error in Stage (empty `.out` no longer hides NAMD failures)
- **Cluster probe:** list compute nodes via `sinfo -N`; batch templates support `SBATCH --nodelist=` / `--constraint`
- **Equilibration (Amber):** full `AmberEquilibrationManager` — mdin templates for NVT/NPT/NPAT/NPgT, MDA GROUP positional restraints (no dihedrals), `run_equilibration.sh` with resume/resources, executable discovery (`pmemd.cuda` → `pmemd` → MPI → `sander`), and `amber_analysis` progress/energetic parsing
- **Equilibration templates:** generated inputs stamp GateWizard API version, local generation time (with timezone), and shared templates version (`testing` for now — protocols are still evolving) for traceability

Changed

- **README:** GateWizard splash lockup at the top of the repo README

Fixed

- **Cluster upload:** Paramiko SFTP recursive put fails clearly on zero/partial uploads; `verify_remote_files` ensures the launched run script / `.slurm` exist before `sbatch`
- **Cluster probe:** reject help-text tokens from broken `module avail` output; surface probe errors; prefer GPU partitions via `prefer_partitions`
- **Equilibration (NAMD):** production (and any stage that finishes after the last `TIMING` print) no longer shows `0.0 ns/day` — use `Wall:` / final `WallClock:` for performance and elapsed time instead of overwriting wall time with `0.0` when promoting the final output step
- **Analysis (bilayer thickness):** when the membrane straddles the periodic z boundary, thickness no longer reports the water gap (`L_z − d` ≈ 100 Å); center the bilayer in z before lipyphilic and fold long PBC paths back to the headgroup–headgroup distance (~35-40 Å for POPC)
- **Analysis (bilayer time axis):** APL/thickness x-axis follows the sum of `file_times` instead of falling back to a tiny default dt
- **Equilibration (Amber/GROMACS):** if official ns/day is missing from the log, estimate it from wall elapsed × simulated time (completed stages included)
- **Equilibration (NVT):** Amber, NAMD, and GROMACS `01_NVT` templates are true constant-volume NVT through production (aligned with OpenMM); CHARMM-GUI’s NVT packs incorrectly matched NPT after early heating
- **Equilibration (NAMD NPAT):** steps 6.3–6.6 now use `useConstantArea` like CHARMM-GUI (they incorrectly had NPgT `useConstantRatio` / `SurfaceTensionTarget`)
- **Equilibration (GROMACS):** GPU `mdrun` lines now include `-ntmpi` (one rank per GPU) with `-ntomp`, required by GROMACS 2026 when OpenMP threads and GPUs are combined
- **Equilibration (GROMACS):** step0 energy minimisation runs on CPU only (`-ntmpi 1 -ntomp … -nb cpu -pme cpu`) — PME GPU does not support `steep`/`cg`, and GPU-capable `gmx` still requires `-ntmpi` with `-ntomp` even without GPU offload flags; MD stages still use GPU flags when requested
- **Equilibration (GROMACS):** omit unused `POSRES_FC_*` macros from MDP `define` lines (fixes grompp warnings for WATER/OTHER when those restraints are not in the topology)
- **Equilibration (GROMACS):** parse GROMACS 2026 energy-minimisation start banner (`Started Steepest Descents` / `Conjugate Gradients`) so job cards show elapsed wall time for minimization
- **Equilibration (GROMACS):** Kill MD / SIGTERM often still writes `Performance` + `Finished mdrun` before `nsteps` is reached — no longer treat that as stage completion or force progress to 100%; keep actual steps/ns and mark the stage interrupted

1.0.52

Fixed

- **Equilibration (GROMACS):** `run_equilibration.sh` now applies UI CPU/GPU settings on every `mdrun` (`-ntomp`, `-nb gpu`, `-pme gpu`, `-gpu_id`)
- **Equilibration (OpenMM):** run scripts pass `--device` / `--threads`; CPU compute target sets `PLATFORM=CPU`; `openmm_run.py` honors those flags via platform properties
- **Equilibration resume:** refreshing `run_equilibration.sh` preserves CPU/GPU settings from `equilibration_resources.json`

Notes

- **NAMD** already emitted `+p` / `+devices`; unchanged. Amber equilibration remains unimplemented.

1.0.51

Added

- **Equilibration job metadata:** `equilibration_job.json` write/infer (`equilibration_job_metadata.py`) — input directory, ensemble, and protocol for GUI job cards and **Use in form**
- **GROMACS minimization progress:** energy-minimization logs report step count and wall time (not ns/day); `converged_early` when EM finishes before `nsteps`

Fixed

- **Equilibration resume (OpenMM):** stage completion and resume point use log-based progress (aligned with GUI); canonical stage order/labels (`Equilibration 1`…`Production`); interrupted mid-stage-2 resumes **Equilibration 2** (not stage 1)

1.0.50

Added

- **Equilibration:** stage-level continue — `get_equilibration_resume_point()` and `RESUME=1` support in generated `run_equilibration.sh` (NAMD, GROMACS, OpenMM); skip completed stages and restart the first incomplete stage from the beginning

Fixed

- **OpenMM:** `parse_openmm_log()` uses stage-local **Progress (%)** so per-stage simulated ns is correct when stages chain via `-irst` (cumulative Step values no longer inflate ns across rows)

1.0.49

Added

- **Engines:** `list_md_engine_candidates()` includes a `variant` field (`CPU` / `CUDA` / `OpenCL` / …) for GROMACS (`gmx --version` GPU support), NAMD (install path), and OpenMM (best available platform)

Changed

- **Docs:** clarify conda GROMACS CPU vs CUDA — prefer CPU by default; CUDA matchspec is fragile next to OpenMM/`cudatoolkit` (solver hang, not an EULA prompt); document gatewizard-gui bootstrap defaults and `GATEWIZARD_CONDA_GROMACS_CUDA`

1.0.48

Fixed

- **Engines:** detect NAMD version from `Info: NAMD x.y.z` banner (was skipped as noise) and fall back to version in the install path (e.g. `NAMD_3.0.2_...`)

Page 1 of 8

© 2026 Safety CLI Cybersecurity Inc. All Rights Reserved.