[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