openfluid / openfluid Goto Github PK
View Code? Open in Web Editor NEWOpenFLUID framework and applications
Home Page: https://www.openfluid-project.org/
License: Other
OpenFLUID framework and applications
Home Page: https://www.openfluid-project.org/
License: Other
"Refactor mapview as a reusable component, for embed it either in OpenFLUID-Builder main application or in extensions.
The component should be parameterizable for different usages (this list is not exhaustive):
Use std::string whenever possible
Based on the existing simulation function (ID: utils.export.spatialdomain-vars.vtk)
When two variables have the same name but are associated to two different unit classes, it appears only once in doc generated by func2doc.
Remove deprecated loops BEGIN_XXX_LOOP and END_LOOP
Refactor logging system for:
Enable pluggable outputs methods as plugins for extracting data from simulations
As examples:
Update copyright text in header of source files and COPYING files
Based on the existing simulation function (ID: utils.export.spatialdomain-vars.kml-anim)
Provide basic OpenFLUID-builder extensions with the installation package
Review GEOS lib management in CMakeLists.txt by adding standard GEOS_FOUND, GEOS_LIBRARIES and GEOS_INCLUDE_DIRS variables. Should be done using the FindGEOS module: https://github.com/mloskot/cmake-modules/blob/master/modules/FindGEOS.cmake
-lgeos in compile build target links should be removed
If not GEOS_FOUND, do not raise a fatal error but disable the build of landr and all dependent source code (parts of core, tests on GeoRasterValue, GeoVectorValue, ...)
openfluid-core should not be dependent on geos, only GDAL. Parts of GeoVectorValue and GeoRasterValue that uses geos should be transferred into the landr lib
GEOS defines must be removed from config.hpp, and should be given as definitions in the compiling options of landr
Introduce a scheduler which plan the executions of simulations functions during the simulation period.
The sim functions are executed following the model order at t0, then return the number of second before their own re-execution, and so on until the end of the simulation period.
If two simulation functions have to be executed on the same time step, they are sorted to follow the original model order
Update simulation window in OpenFLUID-Builder to take into account variable time step
Based on the existing simulation function (ID: utils.export.spatialdomain-vars.kml-plot)
Use listeners in buddies for better interactions with the calling application, and possible integration in OpenFLUID-Builder
Objective: associate each variable, parameter, to its physical SI unit.
DatastoreItem must be provided with a valid Id (should not allows empty Id)
Improve unit class management by creating a class UnitClass, ensuring that input data attributes and variables are strictly the same for all spatial units of the same class see friend qualifier
Classes: SystemEnvironment <-- OpenFLUIDEnvironment <-- ProjectEnvironment <-- RunEnvironment
SystemEnvironment (tout est statique)
OpenFLUIDEnvironment (tout est statique)
ProjectEnvironment
RunEnvironment
System: Windows seven 64 bits, OpenFLUID 1.7.2 32 bits
OpenFLUID project : example project of the M2 "eau et ressources" course
When using mapview with this project, openfluid-builder crashes (classical error message displayed by windows).
Provide realistic examples/demos in OpenFLUID bundle
When using builder for the first time, the examples/demos are copied in the OpenFLUID user directory in order to be used.
A menu item in the Help menu allow the user to force this copy if needed
linked to issue #32
-> update cmake dependency version (currently 2.6, must be >= 2.8.9)
-> review Cmake checking of geos library, must also check the C++ version of the library, not only the C version
DEB
Transform the void OPENFLUID_ExportUnitsGraphAsDotFile method in the PluggableFunction class to an observer
allow
style.SU.fillcolor = blue
style.SU.shape = egg
when.init=1
when.final=0
when.everytime=0
Review inject and interp generators workflow:
Update generators for variable coupling time:
Set tests dependencies in CMake config files, avoiding wrong order of tests excecutions
Rearrange FluidX and descriptors management in a single fluix namespace
openfluid-engine as openfluid?
openfluid-builder as openfluid-studio
Sometimes it fails (usually on the first time it is run), sometimes it passes (on the next runs)
Check every warning given by compiler at build
This causes segmentation fault on model instanciation
Add a functionnality to ignore simulation functions with wrong version number
Enhance error message when simulation function cannot be loaded
Add primitives like OPENFLUID_GetDatastoreItem() for each datastore value type
Remove the "get" prefix in accessors names when the accessor returns a reference to a private member
Improve the current exception system with enhanced embedded information with exception. This could be donne through a hierachy of exception classes, giving more precise information
-OFException
-OFModelException
-OFSpatialException
-OFSimulationException
-OFIOExecption
-OFFluidXException
-OFBuddyException
Provide a bundle for installing OpenFLUID in Mac OSX
instead of boost filesystem v2
Redesign the plugin manager in order to manage any kind of plugins
Redesign the plugins layout to publish at least the following entries - get the plugin type - get the famework version used to build the plugin - get the plugin signature - get the plugin instance
Set up a rich scheduling information returned byfunctions, as an object
set durations as unsigned long long
"Remove _t suffix in datatypes,
ex: openfluid::core::Duration_t -> openfluid::core::Duration"
Create CMake modules to ease the build of OpenFLUID wares
Create file OpenFLUIDWaresMacros.cmake including the following macros
Propose default compoents based on build of libraries (GUI/no GUI, builder/no builder, landr/no_landr, ...)
Manage the ability to select other components in a second call to module
macros to build and install wares
Ressources:
uses gnuplot (with refresh gnuplot feature)
The part of the filename before the suffix must correspond to the ID
To be checked in plugins managers
remove deprecated or invalid option (-z? -a?)
choose more adapted options
Introduce new scheduling modes based on dependencies between simulators
return FollowOther("sim.id");
the simulator will be executed on the next time point when the simulator sim.id is executed
return FollowAnyOther();
the simulator will be executed on the next time point when any other simulator is executed
Check descriptors mandatory data that should be parameters of the constructors of the descriptors classes, e.g. event date, function id, datastore item id, ...
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.