GithubHelp home page GithubHelp logo

f2i-consulting / fespp Goto Github PK

View Code? Open in Web Editor NEW
9.0 6.0 8.0 1.66 MB

A Paraview plugin to visualize RESQML™ data

License: Apache License 2.0

CMake 5.60% C++ 94.40%
resqml epc energistics reservoir well

fespp's Introduction

WINDOWS BINARIES

  • Please download the windows binaries of Fespp in the release section and follow instructions of the README.txt contained in the zip.
  • If you want to build Fespp by your own, look below for instructions.

BUILD dependencies

  • FESAPI v2.9.0.0
  • ParaView with same HDF5 libraries used by FESAPI

    known to work on Linux and Windows starting from ParaView 5.11.0

BUILD & INSTALL Fespp

  1. CONFIGURE Fespp with CMAKE You should fill in the following variables

    • FESAPI_ROOT : The path to the folder containing include and lib folders of FESAPI v2.9.0.0 as a minimal version (using our own cmake find module)
    • ParaView_DIR = path_to_paraview_build
    • OPTIONALLY, for (experimental) ETP support, you will need FETPAPI (v0.1.0.0 as a minimal version) support (see here for documentation on how to build fetpapi). Please enable the WITH_ETP_SSL variable and usually set the following variables :
      • FETPAPI_INCLUDE_DIR = path_to_FETPAPI_install/include
      • FETPAPI_LIBRARY_RELEASE = path_to_FETPAPI_install/lib/libFetpapiCpp.so
      • FETPAPI_LIBRARY_DEBUG = path_to_FETPAPI_install/lib/libFeetpapiCppd.so
      • (ONLY IF NOT AUTOMATICALLY FOUND) Boost_INCLUDE_DIR : the directory where you can find the directory named "boost" which contain all BOOST headers
      • (ONLY IF NOT AUTOMATICALLY FOUND) AVRO_ROOT : The path to the folder containing include and lib folders of AVRO (we use our own cmake find module)
  2. GENERATE the build solution with CMAKE once the CONFIGURE step is OK

  3. BUILD and INSTALL the solution generated by CMAKE

  4. COPY fespp_install_lib/paraview-5.11/plugins/Fespp directory into paraview_install/Plugins/Fespp plus

    • in the paraview_install/Plugins/Fespp folder on Linux:

      • libFesapiCpp.so (from FESAPI install lib directory)
      • libFesapiCpp.so.2.9 (from FESAPI install lib directory)
      • libFesapiCpp.so.2.9.0.0 (from FESAPI install lib directory)
    • in the paraview_install\Plugins\Fespp folder on Windows:

      • FesapiCpp.2.9.0.0.dll (from FESAPI install)
  • Note 1 : If they exist (which probably not), you also need to copy FESAPI dependencies in this paraview_install\Plugins\Fespp folder. Or to put them in the (LD_LIBRARY_)PATH.
  • Note 2 : On Linux at least, you need to build Paraview with VTK_MODULE_USE_EXTERNAL_VTK_hdf5=ON and VTK_MODULE_USE_EXTERNAL_VTK_zlib=ON for using the same HDF5 libraries in PV and Fespp. We use statically link HDF5 with FESAPI for our Windows build.

Execution

  1. Only if you use MPI ParaView version, Run the Paraview server (Caution : use MPI build of ParaView!!!) :

    mpirun -np 8 ./pvserver

  2. Run the ParaView client :

    ./paraview

  3. Only if you use MPI ParaView version, Connect the Client to the Server On client side : File->Connect... and then fill in the required fields.
  4. Loading of the Fespp plugins (Caution: on client and, only if you use MPI ParaView version, server sides!!!)

    Menu Tools->Manage plugins... and then select and Load Fespp.so

  5. You can now load a RESQML™ file (epc document)

Credits

FESAPI Product incorporates RESQML technology/standards provided by the Energistics Consortium, Inc.

RESQML is a trademark or registered trademark of Energistics Consortium, Inc.

fespp's People

Contributors

cedricrobert avatar philippeverney avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

fespp's Issues

Cannot build Fespp with QT4

Fespp can be built without any problem with QT5 but it cannot with QT4.
I have at least this error message at build time : "error: ‘class QHeaderView’ has no member named ‘setSectionResizeMode’"

Since some not so old paraview version (<5.3) use QT4, I think it should be good for Fespp to deal with QT version 4 as well.

Reopening en epc document does not work

1- Open an epc document using the "epc icon"
2- Delete the imported epc document with the delete button in "Properties" panel
3- Try to reopen the same epc document with the "epc icon"
Nothing happens

It occurs with the current code built in Windows 10 paraview 5.5 64 bits MPI in debug (and RelWithDebInfo) mode (VS2013).

Sporadic Grid2Representation loading on paraview

Hello Fespp team,

I am writing on behalf of the GiGa infosystems team with something between a query and bug report.

Loading of Grid2dRepresentation by fespp seems to be sporadic. By this I mean that two Resqml files written by the same writer and differing, as far as we can tell only in uuids for various parts do not behave the same when opened by the FESPP plugin for paraview (one opens and views, the other only doesn't). We are fairly sure that the files are at least somewhat valid as they:

  1. Come from the same geometry and are written by the exact same version of the exact same writer.
  2. Have been checked by the geosiris validator for epc files (http://webstudio.geosiris.com/editor).
  3. Have been checked by hdf5 tools (https://docs.hdfgroup.org/hdf5/develop/_view_tools_command.html).
  4. An "in house" parser successfully and correctly parses the files (although that should not be taken as proof of validity, only that the files are not "messed up beyond all recognition").

We are quite sure that this is not some kind of paraview flakiness, since repeatedly opening the same files with paraview gives the same result. We also observe that the plugin does not open the Grid2dRepresentation from the GeoSiris example file in the Energistics Resqml v2.01 documentation pack.

Basic further information:

Version: 5.11.1
VTK Version: 9.2.6-1051-gfe3a658a4a
Qt Version: 5.12.8

FESPP version: 3.0.0 (master, commit 2b2d8e7)
Runtime: Ubuntu 20.04.1

I can provide more details and the example misbehaving files and general background if required. At this point I am not sure whether this is a bona fide bug (either in the Writer, or in Fespp or paraview), or whether this is expected behaviour.

Thanks in advance for any insight on this issue.

type mismatch

In the v3.3 branch there are lot of int that where replaced by uint32_t but in the vtk API we can find:

int vtkDataAssembly::AddNode 	
    id of the newly added node on success, else -1. 

I think unsigned integers where needed

PS: what make me think was this error when loading an epc

had to make up a value for selection

(  98.121s) [paraview        ]vtkPartitionedDataSetCo:217    ERR| invalid partition index '1'
(  98.285s) [paraview        ]vtkPartitionedDataSetCo:217    ERR| invalid partition index '1'
(  99.650s) [paraview        ]vtkPartitionedDataSetCo:217    ERR| invalid partition index '1'

Time series property

When opening the time series property from the unit testing package : grid interp -> two faulted sugar cubes (explicit geometry) ->Time Series Property :

  • No datetime appears in combobox
  • Nothing appears as well in the time step slider
  • Two properties are named "Time Series Property"

Could it be cleaned?
Either by putting each timestep in the treeview or by using the combobox and the slider please?

File -> Open leads to a Segmentation fault

Hi Cedric,

The new way to open an EPC Document is to click on the EPC blue icon.
However, it is still possible to to file->open and select an EPC document. And, when doing the latter, a seg fault occurs.
Can you either:

  • disable this way to import EPC document (only keeping the blue icon)
  • or repair the File->Import functionality

Thanks

Cannot unselect a 2d grid property

Hi,

I am trying to import testingPackage.epc (from Fesapi master) into Paraview using Fespp (branch ETP).
I can visualize Horizon1 Interp1 Grid2dRep Prop2 by checking its node. But, when I uncheck its node, the horizon keeps visualized (it stays in the multiblock inspector as well even if unchecked).

Any clue?
Regards
Philippe

Import wellbore marker representation

Hi Cedric,

Could you import wellbore marker representation please?
One (prefered) way to import it is to vizualize each marker by means of a circle at its MD (Measured Depth) position.
We can also think about vizualizing its name in the viewer.

Thanks

Wide support for 2D grid representation

Hi Cedric,

The Fespp plugin should be able to vizualize 2D grids in an advanced way.
Currently it looks that 2d grids are no more vizualizable. Previously, I think I remembers we could only look at nodes and not at cells.

The 2d grid vizualization should be able to:

  • show nodes and, cells and edges, etc...
  • show properties on nodes and or cells

Thanks

Embed the property kind mapping file with the plugin

When importing properties, we generally face this kind of warning in Paraview


Warning: In vtkEPCReader.cxx, line 106
vtkEPCReader (0xe11e650): Cannot verify if the local property kind bc8bdd17-33d0-36b4-b713-73a76de52d66 of the continuous property e36655d9-2d67-402c-a508-e4dfdce0c4e8 is right because no property kind mapping files have been loaded.
Cannot verify if the local property kind 530b09e4-5fe2-38e5-a64a-d48342bb3668 of the continuous property 0b522b5b-7e7b-4e4e-9976-79b95ffcbf69 is right because no property kind mapping files have been loaded.

This is because the property kind mapping file is not embedded within the plugin. Then FESAPI cannot check if the property kind to import are valid or not.

Please could you embed this FESAPI resource file within the plugin to avoid such warning and get a first level of property type validation?

Export of a scalar IJK grid property

Hi Cedric,

Could it be possible to export an IJK grid property from Paraview in RESQML?
The use case is :

  • Import an IJK grid prop from a RESQML file
  • generate a property using a paraview process.
  • Export this property in a new RESQML file (without exporting the imported IJK grid)

Thanks

Crash when deleting an epc document which contains subrepresentations

1- Open with the "epc icon" an epc document which contains a grid and subrepresentations of this grid
2- Delete the imported epc document with the delete button in "Properties" panel
It crashes

It occurs with the current code built in Windows 10 paraview 5.5 64 bits MPI in debug mode (VS2013).
It does not occur in RelWithDebInfo mode.

Minimum width of "selection widget"' is too large

Hi Cedric,

The width of the "selection widget" looks to have a minimal size. And this minimal size is really uncomfortable on some low resolutions screen.
Would it be possible to disable this minimal size please or to make it really less.
Remark : other panels from Paraview have a good behaviour which should be mimic ideally.

Thanks

Wrong component specification

In the CMakeLists.txt at line:
find_package(ParaView 5.11.0 REQUIRED pqCore)

I suppose that you wanted to write this:
find_package(ParaView 5.11.0 REQUIRED COMPONENTS pqCore)

but I think specifying a component is useless since your don't use it in a target_link_libraries.
I whould write it as :
find_package(ParaView 5.11.0 REQUIRED)

PS: I have a compilation issue with this specific ligne in my spack recipe. The develop branch in my fork (with this change) works without any issues.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.