
Ocean Framework, C++, Qt, C#
CGG (now Viridien), together with Petrobras, was developing a solution for one of the central challenges of modern geophysics in the context of 4D Seismic: generating, from the result of a numerical reservoir simulation, a synthetic seismic cube corresponding to a given time step of the simulation. This synthetic cube can then be compared with the actual seismic acquired in the field, enabling history matching and refinements of the simulation model through quantitative analysis between modeled and observed behavior.
The core of this capability was being built in the form of the S2S (Simulator-to-Seismic) library, written in C++ with its own Qt graphical interfaces. The library was scientifically robust but operated outside the Petrel environment, hindering its use in the standard workflow of reservoir and geophysics teams.
The challenge was twofold. On the S2S library side, it was necessary to contribute to the development and maturation of the C++ numerical core, in direct collaboration with CGG's technical teams. On the Petrel side, a solid bridge had to be built between S2S and the modeling environment, so that teams could trigger synthetic seismic generation, parameterize the algorithms, and analyze the results without leaving Petrel.
All of this while preserving S2S's native Qt graphical interfaces, avoiding the cost of reimplementation and maintaining visual and functional consistency with CGG's ecosystem.
DeepSoft operated on two complementary fronts.
On the first front, the team contributed directly to the development of the S2S library, adding C++ engineering capacity to the numerical core that performs the full transformation between the reservoir simulation domain and the synthetic seismic domain.
On the second front, the team developed the SeisFlow plug-in for Petrel, using the Ocean Framework to build the bridge between S2S and the Petrel environment. The chosen architecture allows the user, from within Petrel, to:
- Execute the algorithms of the S2S numerical core directly on Petrel project data.
- Use S2S's native Qt graphical interfaces, now launched and integrated from within Petrel, with no manual data transfer.
- Combine S2S features with Petrel's algorithms and visualization tools in a single workflow.
The integration layer was built in C# on top of the Ocean SDK, ensuring smooth communication between Petrel's .NET ecosystem and the C++/Qt core of S2S.

Synthetic seismic cube generation now happens directly on Petrel project data, eliminating the need to export reservoir simulations to an external environment and reimport synthetic results for analysis.

The integration preserved and made S2S's native Qt graphical interfaces available directly from within Petrel, ensuring continuity with CGG's ecosystem and avoiding visual reimplementation overhead.

Direct comparison between synthetic seismic and field acquired seismic became available inside the same work environment where the reservoir engineer operates the simulation model, accelerating the dynamic model adjustment cycle.

The project consolidated DeepSoft's collaboration with one of the largest global geophysics companies, with real technical contributions both to the high performance C++ numerical core and to the integration layer with the Petrel environment.