-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Labels
enhancementNew feature or requestNew feature or request
Description
This issue is a collections of ideas & thoughts for future improvements of the Plugin
GUI
- choose a unit-testing framework => probably with
QtTest=> see http://johnnado.com/pyqt-qtest-example/ - implement Application-testing
(import the Qt-things fromqtsalomeor directly?) => from Qt, is cleaner - unhandled exceptions should open a messagebox => check if this is already done natively
- stop statusbar timers https://stackoverflow.com/a/21081371
Internal
- use python f-strings (python 3.6!)
- once done on the Kratos-side: Use latest docker container with Kratos (Wheels should not be used since they don't have the latest version, the docker-image gets rebuilt every night!)
- Add tests for the tui-examples => requires
ReadMdpabcs I don't want to store the (big) mdpa-files from the examples => the idea is to compare only num elems etc and theModelParthierarchy - use lazy evaluation for logger
- test logging with assertLogs
- Add log level for
TIMING(betweenDEBUGandINFO)
Documentation
- clean and enhance documentation
- finish the planned examples
- use PEP 257 -- Docstring Conventions for documentation (where missing)
Usability
- Add a config file where options can be stored. This should be a
jsonfile in the root-dir (or maybe the.configdir in Linux?) of the Plugin. Probably load those into a py-file that can be accessed from everywhere => then it will no longer be necessary to temper with env-variables - Implement
ReadMpda=> needed to importing an mdpa and for testing - Create a mesh from
ModelPart -
import GiDgeofile and create geometry from it. => for this the GiD-project needs to be saved as Ascii => not possible right now since Salome doesn't expose the creation of NURBS entities - maybe created
ModelParts from different Main-Meshes? => think turbine which has multiple parts! - automatically switch orientation of faces and volumes in case it is wrong. Otherwise it will not work in Kratos. => see this branch
- once GUI is there: add possibility to launch Kratos from GUI =>
subprocess - check why the logger prints are delayed while
printworks fine => might have sth to do withexecute_in_salomeand how thePopenis used => this could be related - get batch mode working in Windows. Preliminary tests using what is explained here were not successful
Performance (in this order)
- before doing anything in this direction some benchmarks need to be defined
- in
GeometriesIO: check if overlapping IDs exist for already existing entities. If not then new entities can be added without checking if an entity was already created from this geom-entity. - Using
__slots__in theModelPart=> see this branch - using parallel-processing when adding entities in the
GeometriesIO - using parallel processing when getting entities from Salome-Mesh. See here. => check if accessing Salome is threadsafe!!!
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request