Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Directional drilling 3D visualization modeling #973

Open
xiaohua00921 opened this issue Dec 27, 2024 · 16 comments
Open

Directional drilling 3D visualization modeling #973

xiaohua00921 opened this issue Dec 27, 2024 · 16 comments

Comments

@xiaohua00921
Copy link

What is your question?
Hello, in your example, the unknown model is imported into the drilling data visualization 3D modeling, your data are all vertical drilling data, I wonder if you could provide some data like directional drilling and be able to visualize an example of modeling? Because as you know directional drilling data is oriented by inclination and azimuth.

@xiaohua00921
Copy link
Author

A little help would be greatly appreciated.

@javoha
Copy link
Member

javoha commented Dec 27, 2024

Hi @xiaohua00921,

if you look through all the examples at the gempy page and on the way input data is loaded (e.g from csv files), you will see that data for surface points is added using xyz coordinates. This does mean that you cann add surface boundary information any way you like, there is no restriction to follow a vertical drillhole.

Let me know if this answers your question.

Cheers,
Jan

@xiaohua00921
Copy link
Author

xiaohua00921 commented Dec 30, 2024

Hello, javoha.
This modeling based on the drill data xyz is helpful for me, but I still want to ask one thing, the columns in the online data don't seem to correspond very well, including the column with the name of 789, I would like to ask you to help me to answer what these columns represent and how they are used in the modeling process, I always feel that some of the data is not used, this question may cost you a lot of time. I would like to thank you very much for your generous help.

@xiaohua00921
Copy link
Author

Also, I would like to ask you, when you say that the vertical drill holes are unrestricted, do you mean that based on these corresponding drill hole data, according to your gempy algorithm, it is possible to successfully connect them into such a directional trajectory (a line with direction)? My research direction is 3D modeling of coal mining, mainly based on the existing borehole data, interpolating each layer of lithology according to your corresponding method (if the data volume is large enough), and then updating this model according to my subsequent data afterwards, I wonder if gempy can be used in my direction, do you think it can be?

@xiaohua00921
Copy link
Author

Addendum To the first reply, I'll show you the borehole data in your example, it's in this graph, can you please elaborate on the meaning of this,altitude,base,formation,top,_top_abs,md, for example his altitude, is this altitude the z-value of the borehole, and base is based on who? base is an altitude based on who? The meaning of these data and so on. Thanks again if you can answer my questions.
https://raw.githubusercontent.com/softwareunderground/subsurface/main/tests/data/borehole/kim_ready.csv

@NilsChudalla
Copy link
Member

Dear @xiaohua00921,
if you have the feeling, that some data is not used in the modeling process, could you be a bit more precise?

  • Does the modelled surface not go through the point? -> We might need a bit more information.
  • Does a formation from the input not show up in the model? -> Did you include the formation as surface in the stack?
  • Something else?

Regarding the model input: Gempy might treat input data differently from modelling software you might be familiar with, where the collar data alone is sufficient to describe the entire input. You will want to transform the input for each surfaces into the "xyz" format, not "collar+borehole meter" (line with direction) format. In your example, I am not sure, what columns "7", "8", and "9" should represent. Gempy will look for specific names for the columns in the input files: here is how surface input should look like (and columns should be named) (https://github.com/gempy-project/gempy/blob/main/examples/data/input_data/jan_models/model5_surface_points.csv). And here is an example for orientation data (https://github.com/gempy-project/gempy/blob/main/examples/data/input_data/jan_models/model5_orientations.csv), although you can add orientations as either gradient vector (G_x, G_y, G_z) or dip, azimuth and polarity. I recommend that you check out the video series, Jan and I did, where we are going into this in a bit more detail. https://www.youtube.com/watch?v=yYwJVYy8ilw

Regarding your overall modelling goal, of adding more points to the model: Sounds like a fairly common usecase for Gempy. You will recompute the model after adding new points, but you could use the function "add_surface_points()" (https://gempy-project.github.io/temp_gp3_docs/tutorials/a_getting_started/get_started.html#surfaces) to do this step by step and comprehensibly.

@xiaohua00921
Copy link
Author

Dear NilsChudalla ,
This modeling based on the drilling data xyz is very helpful to me, but I still want to ask a question, in this https://raw.githubusercontent.com/softwareunderground/subsurface/main/tests/data/borehole/kim_ The columns in the ready.csv data don't seem to correspond very well, including the column with the name 789. I would like to ask you to help me to answer what these columns represent and how they are used in the modeling process, and also could you please explain in detail the meaning of this,height,base,formation,top,_top_abs,md, for example his height, is the height the z-value of the borehole? Who is the foundation based on? Who is the foundation based on for the height? The meaning of these data and so on. This question may take you a lot of time. Thank you very much for your generous help.

Also, I would like to ask you, when you say that the vertical boreholes are unrestricted, do you mean that based on these corresponding borehole data, according to your gempy algorithm, you can successfully connect them into such a directional trajectory (a directional line)? My research direction is 3D modeling of coal mining, mainly based on the existing borehole data, interpolating each layer of lithology according to your corresponding method (if the amount of data is large enough), and later updating this model based on my subsequent data, I don't know if gempy can be used in my direction, do you think it's possible?

@javoha
Copy link
Member

javoha commented Jan 7, 2025

Hi @xiaohua00921,
I think there is some confusion about the dataset you have linked. This dataset does contain data that gempy does not use. I can not tell you exactly what all the columns mean, this depends on where the data is from and how it was processed.
Gempy will only use the columns that are relevant for the underliying algorithm. For surface data points this specifically means it will only use the columns "x", "y", "z" and "formation", even if you pass a .csv file with other columns. Please take a look at the video that @NilsChudalla linked: https://www.youtube.com/watch?v=yYwJVYy8ilw.

This also means Gempy does not care if your data follows a borehole trajectory, is randomly somapled over space from outcrops, was picked from a seismic or is fully synthetic - as long as you pass x,y,z coordinates and formation.

Does this answer your question?

@xiaohua00921
Copy link
Author

Unnamed: 0,0,x,y,name,num,z,year,7,8,9,altitude,base,formation,top,_top_abs,md
0,2904240,303412,3913997,1-1,12,-3894,XX,14,0,0.409,108.7132874,1035.5970765000002,topo,0.0,108.7132874,0.0
0,2904240,303412,3913997,1-1,12,-3894,XX,14,0,0.409,108.7132874,1652.2456364,etchegoin,1035.5970765000002,1144.3103639,1035.5970765000002
0,2904240,303412,3913997,1-1,12,-3894,XX,14,0,0.409,108.7132874,2109.9936834,macoma,1652.2456364,1760.9589238,1652.2456364
0,2904240,303412,3913997,1-1,12,-3894,XX,14,0,0.409,108.7132874,2799.0279844,fruitvale,2109.9848934,2218.6981808,2109.9848934
0,2904240,303412,3913997,1-1,12,-3894,XX,14,0,0.409,108.7132874,2110.0036834,mclure,2109.9936834,2218.7069708,2109.9936834
0,2904240,303412,3913997,1-1,12,-3894,XX,14,0,0.409,108.7132874,3062.3277894,round_mountain,2799.0279844,2907.7412718,2799.0279844
0,2904240,303412,3913997,1-1,12,-3894,XX,14,0,0.409,108.7132874,3162.6180724,olcese,3062.3277894,3171.0410768,3062.3277894
0,2904240,303412,3913997,1-1,12,-3894,XX,14,0,0.409,108.7132874,3323.9220274,vedder,3162.6180724,3271.3313598,3162.6180724
0,2904240,303412,3913997,1-1,12,-3894,XX,14,0,0.409,108.7132874,4352.0370174,,3323.9220274,3432.6353148,3323.9220274
1,2906949,312385,3917847,KCL_B45,45,-3107,XX,14,0,0.275,121.8172989,833.7528457999999,topo,0.0,121.8172989,0.0
Maybe the data linked above is a bit confusing, I've put the data directly in the comments section this time. First of all, in response to the previous question, I tried deleting columns YEAR, 7, 8, and 9 still works fine, so this is irrelevant. Next, in the above question, what does the two columns (0,2904240,) before column x mean? Secondly, in this altitude,base,top,_top_abs,md, I understand that altitude is the elevation and md is the bathymetry, but I don't understand the meaning of the other references, so I would like to ask you to answer this question again.
Lastly, a new question I would like to ask is, in the example data, the formation is 9, why the layered color rendering is not 9? I would like to know exactly how to solve this problem, and I wonder if this question is written in enough detail this time.
If I still don't understand that question, please let me know. Thank you very much.

@xiaohua00921
Copy link
Author

8cafb080d08c669387a24f09d0ef4aa This image is about color after layering.

@xiaohua00921
Copy link
Author

xiaohua00921 commented Jan 9, 2025

I have a new question about the xyz axis in this data, for example, the point with index 0, this xyz data is completely unchanged, why, after visualization, the point is the z value is changed? (I'll provide you with a graph below)
BTW, this is my understanding, do you see it right?
The “base” is the depth of the bottom of the current stratum, and the “top” is the depth of the top of the current stratum.
How do these two values work in the xyz coordinate system? I'm guessing there would be a correspondence in your code?
I would greatly appreciate your reply here.

@javoha
Copy link
Member

javoha commented Jan 9, 2025

Hi @xiaohua00921,
regarding your original question:
Maybe I was not super clear - This dataset was not created by us. I do not know what all the columns mean. The only thing I know is that gempy will only take the four columns named x,y,z and formation and ignore the rest. If you want more information on the orginal dataset you need to ask on the subsurface github where it is located.
The same I think is true for your second question: This drillhole plot was not created with gempy, so I do not know how the coloring works there. In gempy the elements will have names corresponding to the content of the formation column.

@xiaohua00921
Copy link
Author

hi.
I'd like to borrow your time for a few minutes while the questions are being uploaded.

@xiaohua00921
Copy link
Author

914968fed97ae1cf280010a105242fb

@javoha
Copy link
Member

javoha commented Jan 9, 2025

Hi,
your last image is kind of the same thing - it was not created with gempy so I do not know how it is supposed to look.

@xiaohua00921
Copy link
Author

Hi!
And who created this one?
Where should I be able to learn this answer?
This is one of the examples from the official website.
Are you sure it's not clear?
Anyway, thank you very much!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants