helenginn / mabscape

abmapping
0 stars 0 forks source link

Opening monte carlo results #8

Closed funkefel closed 2 years ago

funkefel commented 3 years ago

When opening the results of monte carlo calculations in cluster4x, in the terminal there is the promtp, "no screen...". If the "Datasets to cluster4x" button is pressed, cluster4x opens up with the selected datasets as expected. When the cluster4x window is closed, and a result is selected the following text is promted to the terminal:

Calculating averages from 1 datasets...
AveCSV vector list = 0
Average vec: 
Inter-correlations against average...
find intercorrel Vectorlist: 0

Calculating SVD...
Clustering success.
Job complete.
QObject::moveToThread: Current thread (0x55bf6a1b0c40) is not the object's thread (0x7f2ee4004680).
Cannot move to target thread (0x55bf6a1b0c40)

(0, 0, 0)
0
Refreshing.
Repopulating the SVD

Furthermore, the "Datasets to cluster4x" button does no longer work and only prompts

Copying from original...

to the terminal.

helenginn commented 3 years ago

The QObject::moveToThread is internal to the cluster4x code and is because I've done something wrong there.

This is a bug in Experiment::somethingToCluster4x, it gives up if the cluster4x SurfaceView::_screen is uninitialised but really it should call SurfaceView::launchCluster4x and keep going.

funkefel commented 2 years ago

fb53276 Small misnomer is the commit message, should have said Cluster4x instead of mabscape. Anyways, the window now comes back once after it is closed, but when it is closed again, it sees to be gone for good, even though it is calling launchCluster4x if the window does not exist, maybe an issue with the window not closing properly.

funkefel commented 2 years ago

4b155b0 Completely fixed the issue of the Cluster4x window not showing. It turns out, the "x" in the top right corner does not close the window as one would expect, but instead it just hides. This is an inherent property of QWidgets as it seems. There just needed to be a check whether or not the widget was currently visible or not, and if not display the widget again.