How to generate a surface from other surfaces in Petrel

…衆ロ難τιáo~ 提交于 2019-12-24 12:43:28

问题


I have a task to create a new surface in Petrel. I am supposed to generate the average of two surfaces and create a new surface from it (like a mid surface) using Ocean for Petrel software.

Is this possible? and where do i start from? I would also appreciate links to resources that would be helpful to me.


回答1:


Seslie,

You can create surface from Collection be calling method CreateRegularHeightFieldSurface(string name, SpatialLatticeInfo lattice);

To create property as RegularHeightFieldSurface.CreateProperty(Template template);

Then you can access to nodes of surface and property by I and J indexes. X and Y for surface will be generated automatically from lattice.

Point2[]  world = …
var surf = c.CreateRegularHeightFieldSurface(name, oldSurf.SpatialLattice, PetrelProject.PrimaryProject.CoordinateReferenceSystem));
SurfaceProperty prop = surf.CreateProperty(PetrelProject.WellKnownTemplates.PetrophysicalGroup.Pressure);
prop.Name = " Pressure ";
var sizeIj = surf.SpatialLattice.OriginalLattice.Arrays.SizeIJ;
for (int i = 0; i < sizeIj.I; i++)
{
    for (int j = 0; j < sizeIj.J; j++)
    {
        surf[i, j] = …;
        prop[i, j] = …;
    }
}



回答2:


Install the Ocean SDK, it comes with samples and documentation. The class you should use is RegularHeightFieldSurface - check in the Ocean.chm. There is a sample called PreStackSample which has an example on how to create such a surface.



来源:https://stackoverflow.com/questions/12693002/how-to-generate-a-surface-from-other-surfaces-in-petrel

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!