[us-commits] [ehb54/ultrascan3] 7a83b6: somo/grpy: fix in-process finish hand-off + resolv...
emre brookes
noreply at github.com
Sun Jul 19 07:13:26 MDT 2026
Branch: refs/heads/ehb54-issue-972
Home: https://github.com/ehb54/ultrascan3
Commit: 7a83b64352e047e10fe6bc46d68e4e6a05bd9aee
https://github.com/ehb54/ultrascan3/commit/7a83b64352e047e10fe6bc46d68e4e6a05bd9aee
Author: ehb54 <brookes at uthscsa.edu>
Date: 2026-07-19 (Sun, 19 Jul 2026)
Changed paths:
M us_somo/develop/src/us_hydrodyn_grpy.cpp
Log Message:
-----------
somo/grpy: fix in-process finish hand-off + resolve input path
Two fixes found while validating the in-process path end-to-end via the
batch gui_script on a real bead model:
1. grpy_finished() was never invoked. It was posted with
QMetaObject::invokeMethod(..., Qt::QueuedConnection, Q_ARG(QProcess::
ExitStatus, ...)), but QProcess::ExitStatus is not a registered
queued-connection metatype, so the invoke silently failed
("Unable to handle unregistered datatype 'QProcess::ExitStatus'").
grpy_running then never cleared and the batch's
while(grpy_running) processEvents() loop hung forever. Replaced both
call sites with QTimer::singleShot(0, this, lambda) which defers to the
event loop (still no deep recursion through the model batch) but calls
grpy_finished() directly, needing no metatype registration.
2. read_native_file() read grpy_last_processed (a bare filename) relative
to the process CWD. The old QProcess set its working directory to
get_somo_dir(); resolve the path against get_somo_dir() to match, and
guard a missing file with a clear error instead of a silent empty solve.
Validated: gui_script batch run on a 165-bead model produces a .grpy_res
whose every physical observable (rotational diffusion, sedimentation,
intrinsic viscosities, all 8 relaxation times, diagonal diffusion tensor)
matches the Fortran GRPY_osx10.11 binary on the same .grpy input exactly;
only the documented eigenvector sign-gauge and ~1e-9 coupling noise differ.
Refs ehb54/ultrascan-tickets#972
Co-Authored-By: Claude Fable 5 <noreply at anthropic.com>
To unsubscribe from these emails, change your notification settings at https://github.com/ehb54/ultrascan3/settings/notifications
More information about the us-commits
mailing list