ODYSSEE Lunar – GUI
- Several improvements for the user experience
- On DOE Tool:
- While using the “add point manually” function in improve DOE section, when clicked on PCA plots, it was unluckily possible to have points outside of parameter ranges plot. The tool now forces the point to be within these parameter ranges.
- A correlation plot between the parameters X is added in a third tab of DOE tool. It allows to see if some parameters are dependent and to visualize the distribution of each parameter along the diagonal of the plot. An additional option has been added to the color scale of this plot: a moving slider can be moved up and down to shift the maximum correlation value of this chart and highlight values above a threshold you set.
- In Data Management:
- When using “random split into X and XVAL” the percentage of cases used for validation is now limited to meet the requirement to have at least N+1 cases for learning (N=number of parameters).
- When calling Nastran parser tool from Data Management, the created dataset names in the vertical tree were the same with the simply name of the FE output file. Now the dataset name corresponds to the description of the output extracted.
- When selecting validation cases from X_File table (right click > use selected rows as validation cases), the selection is now propagated to Y_files when they are uploaded afterward.
- When you click on the main bloc X-XVAL Data of the vertical tree in Data Management, a new tab has been added to present the auto correlation plot in full screen. This chart is the same and has the same option that the one in DOE tool.
- Parser Nastran tool:
- The “Volume principal” output has been added among the responses proposed in the h5 files, allowing to extract nodal stress for example.
- Pulsar parser:
- For Replacement Loop and Transfer Data processes, an option has been added in the Edit Parsing Links window to automatically define in one click straight links between left variables list from the input file to extract and right variables from output file to replace.
- In optimization:
- The EPS3 parameter is set by default to 1e-7 instead of 0.0 (which corresponded to a value < 1e-7) for all optimization algorithms. This parameter defines the level of decimal monitored by the algorithm for each optimization loop and see if there is convergence or not.
- In animation:
- In animation visualization, right-clicking in the animation display now offers a "set as custom view" option. Personalized view is saved under the yellow "star" icon.
- In interpolation:
- For InvD interpolation (direct or with POD, FFT, Clustering), it was possible to use number of neighbors equal to 0 which was in fact using the default value of 3. This 0 is no longer available for more clarity. The minimum number of neighbors is now 1.
- In custom Script:
- A new criteria function, WIFac2, enhances positive or negative peaks detection between predicted and reference curves. It is integrated into qsr, UserScript_LeaveOneOut.qsr, UserScript_BestMethod_by_Cross_Validation_onX.qsr. To use it, the criteria number is 70 for WIFac2_peak; 71 for WIFac2_peak_abscissa; 72 for WIFac2_score 73 for WIFac2_total.
- Interface
- We have added an option to propagate for all dataset the abscissa options (curve loaded, log scale, title) via the “graph settings” window.
- In Sensitivity tab, the global correlation table (available if there is more of one dataset in the project) has been updated to display the values in addition to the colored boxes of the table. Moreover, for a best visual and understanding, the color scale has been changed to increase the number of color levels. A moving slider can be moved up and down to shift the maximum correlation value of this chart and highlight values above a threshold you set. Finally, the global correlation is now also proposed based on the mean values found in the datasets instead of only the maximum values as it could have been incorrect if there was some noise in the datasets.
- Bug Fixes
- In Data Management:
- Uploading big csv files (with thousands of columns) in ODYSSEE CAE caused crashes of the application. It is now fixed by displaying only the 100 first columns in the UI. Please note that all columns are used in the background.
- In Optimization tab:
- When you were opening a new project from the interface, while an optimization was running in the current project, the convergence plots and icons were not reset. Now, when we open a project, but the current is still running, you are asked to either stop the execution or cancel the opening.
- Animation:
- Some d3plot files were not read and displayed properly since 2024.1 which could affect the visualization and prediction of these.
- Some InSight files from Fluent and StarCCM+ were not read and displayed correctly.
- Parser Adams Car:
- It was not possible to select .exe in the browser window when selecting Python executable as described in the process document.
- In Data Management:
- On DOE Tool:
Known Bug
- Kriging interpolation (direct or with POD, FFT, Clustering) with cubic basis function is returning the error “LU decomposition failed. at “.
ODYSSEE Quasar – Solver
This version includes the following updates:
- Markov Chain Monte Carlo estimation has been updated to return an output csv file presenting the mean and standard values of the estimated parameters.
- A second WIFac criteria function named WIFac2 has been developed to improve the catch of the highest magnitude peak (positive or negative) between predicted and reference curves. To use it, we have defined the WIFac2 function in the “Useful_Functions.qsr” file that can be imported in each quasar script:
function Matrix[] WIFac2(Matrix timeCurve, Matrix exactCurve, Matrix predictionCurve)
- FMU builder: The creation of Functional Mockup Units (FMU) based on ODYSSEE predictive model was only possible in CAE user interface. This capability has been externalized and an FMU builder executable has been added in ODYSSEE package.
- Thin Object Detection new function efficiently detects thin objects like cracks, holes, or burrs in images based on a learning database. It outputs an image with marked detections and a data matrix, which informs the dimensions and pixels number of highlighted marks.
Matrix highlightedFeaturesInfo = thinObjectDetection(Image myPicture, int Blur_dim, int thresholdPercent, int minArea1, int dilatationIterations, int erosionIterations, int minArea2, int maxArea, double circularityRatio, bool showRectangle, String imageOutputName, int resize)
- 2 Advanced STL Functions are now existing:
- Matrix[] computeStlStats(String filename, bool isAscii, bool saveCoordNodes) This function returns a matrix containing the area and volume of the part, the center of gravity of the part and the inertia matrix. This function works if the part is closed. 2D parts are accepted.
- Matrix[] extractStlPoints(String filename, bool isAscii) This function returns the coordinates of points found in STL. It is very useful to apply after it the complexity function.
- Bug Fixes
- In some cases, POD did not work properly at the first step of the Animation prediction. This is now fixed.
- A non-reassuring warning message was displayed for the Entropy function when black and White image was used. It has been removed.
- Updated Quasar documentation
- In QuasarImage chapter, 2 new functions are documented:
- thinObjectDetection to detect thin objects like cracks, holes, burrs in images.
- learnTransfer_NN and predictTransfer_NN to classify images.
- Some Plot functions from QuasarPlot library have been added in a new section called QuasarPlot.
- In STL page from External function chapter,
Matrix coordinates = extractStlPoints(String myFile, String isASCII)has been added to extract the coordinates of nodes from STL files. - Many functions have been added in Useful Functions part:
- getQuasarExePath()returns the complete executable path.
- getEnvironmentVar(String VarName) returns the value of the specified environment variable.
- getInstallDirFromCurrentQuasarExe retrieves installation path without “\QuasarEngine_2.exe” at the end.
- processArgumentForActivateDeactivate(String argument)checks a response (string argument) given by the user and returns an integer value at 1, 0 or -1.
- loadCsvBin(String fileName)takes as argument a filename, detects if it is a .csv matrix or a .bin matrix, and loads it.
- QuasarErrorCriteriaName receives as argument an integer value corresponding to the index of a criteria error and returns the corresponding error criteria name.
- bestKrigingInterpolatorName, bestRbfInterpolatorName, bestInvdInterpolatorName identifies the full name of the Kriging, rbf or InvD methods from a list of values read.
- concatenateElementsFromStringsTab shares the arguments received from a currently executed script to a command line executing a sub-script.
- Wifac2 criteria is documented in Useful Function page and in Compare page from External section too.
- In QuasarImage chapter, 2 new functions are documented:
ODYSSEE Nova – Optimizer
This version includes the following updates:
- SLSQP (optimization with constraint, method 12): if optimization goes until 999, the optimal point with constraint was not displayed.
- A new keyword *SAPARAMETERS has been added (*SA_PARAMETERS is also accepted), allowing to configure the Annealing schedule. To do so, this new keyword takes two arguments: the Initial Simulated Annealing Temperature convergence parameter, and the Number of iterations until the Temperature will be decreased.
Known Bug
- If you use ODYSSEE Solver directly, for a problem with constraints H or G, iterations are correct but the summarize printed at the end of the log presents the best point for only a minimum of F without take care of H or G. Please open the CSV file optimization.csv to find the optimal point among the tested points where F is min and H is positive or G is closest of 0. This issue does not affect the optimal point presented in ODYSSEE CAE.