This is a modelling guide to help you get started simulating Borehole Acoustic Measurement (Logging) systems in OnScale. In this initial example you will be shown how to get the dispersion plots using the symbol language
What is symbol?: Check out these articles to get more familiar with OnScale's scripting language symbol.
Note: This is not a MATLAB tutorial so there will be no instructions in this simulation guide in how to properly use the script. Upon download it will plot the dispersion spectra if all output data from the OnScale simulation is accounted for in the working directory
The model we will show you how to build today will be a fluid-filled borehole surrounded by a fast or slow formation. A steel tool has been included in this model which will allow us to investigate the effects of interaction of steel pipe dispersion with that of the formation. A formation is characterised as fast or slow depending on whether its shear wave velocity is slower or faster than the compressional wave velocity in the borehole fluid.
The sonic measurement tool or in this case the pressure wave excitation will be located at the centre of borehole, the receivers will also be located along the centre of the borehole the first receiver will be placed 1.219m from the transmitter this will be referred to as the Tx-Rx spacing and the receivers are spaced periodically ever 0.152m the Rx-Rx spacing.
Note: When you download this model it will origianally use slow material properies for the formation. The project material file also comes with fast and slow formation material properties. See the Full 3D Monopole & Dipole Open Hole Sonic Logging in Fast, Slow and Anisotropic Formation tutorial for more information
Download and Open the Model
Download: Sonic Model 3D
OnScale Input Files have the file extension *.flxinp. To open the downloaded file:
- Open OnScale
- Select Analyst Mode
- Select the Menu button in the top left of the application
- Select Open
Preview model is used to view the geometry dimensions and material assignment of a model to ensure the script is correct. To preview a model, select the Preview Model icon in the Home tab of the application ribbon.
Note: Preview model will display data from any grph commands that come before the prcs command. If you have more than one grph command, you can cycle through the graphics by continuously selecting Preview Model. To close the preview, select Stop Preview.
Run Model on Cloud
The cloud scheduler will look a little different you don't estimate when running a MPI sim you simply request the amount of RAM needed and run the simulation. The model is set up to run a 500 part simulation. 1 part = 1 CPU.
To run the model on the cloud, select the Run on Cloud button in the Home tab of the application and follow these steps:
- Change Job Name (optional)
- Number of parts being requested - must be changed in script
- Select RAM needed, request 100GB
- Click Run
- From the Home tab, select the Storage icon
- Select the Refresh icon to refresh storage
- Select the Job Name from the dropdown menu
- Select the Download button
- Select Download All
Choose a directory to download the results to. These results will be stored in the folder: 3D_Sonic-YYYYMMDD-HHMMSS\1 where YYYYMMDD-HHMMSS is the current date and time.
We post-processed all of our results in MATLAB, we can provide a MATLAB script that we used. This is not a MATLAB tutorial however so there will be no instructions from here on out but here is a what the processed results look like if the script is used correctly. These results are from the fast formation simulations. Included in the files provided is a folder 'utils' this should be added to the MATLAB path.
We have only shown the pressure waveforms here but take a look at our 2D Fluid Filled Borehole - Anisotropic Formation sim guide article where we have also included the dispersion plot.
Note: For post-processing the waveforms for the dispersions plots we used the “SFK waveform transform” toolbox. This was NOT created by OnScale and it can be obtained from the MATHWORKs webpage. It is not optimal and we would recommend using a better dispersion algorithim.
Check out our blog post:
Check out our webinar by Director of Engineering Mihir Patel: