- Load your well in feet! The number one most hated 'feature' has been 'fixed'... you can now pass the
index
argument toWell.from_las()
orWell.from_lasio()
to control how the index is interpreted. Use'existing'
or'original'
to keep whatever is specified in the LAS file (probably what you want). To convert to metres, use'm'
; to convert to feet use'ft'
. - In the next point release, v0.5, we will change the default behaviour to
'original'
, so if you want to keep forcing to metres, you'll have to change your code toWell.from_las(fname, index='m')
. There is aFutureWarning
about this. - The
Curve
object now has abasis_units
attribute carrying this information. Either'm'
or'ft'
. - See
tutorial/Well_depth_units_v0.4.7.ipynb
. - Thank you to Kent Inverarity for implementing this long-hoped-for feature.
- Big fix in
Location
.
- Allowed adding the NULL value when writing an LAS file with
w.to_las()
.
- Dropped support for Python 2.7 and Python 3.4, and added support for Python 3.7 and 3.8.
- Fixed
location
, whose changes were inadvertently rolled back.
- You can now pass an
alias
dictionary toWell.df()
, along with the list ofkeys
. You can passkeys
andalias
toProject.df()
as well. - A new function,
location.trajectory()
, generates an evenly sampled trajectory, given a sample spacing in metres. - Added
location.plot_plan()
andlocation.plot_3d()
for plotting well trajectories. - Added a new tutorial notebook,
tutorials/Location.ipynb
to demonstrate the well path capabilities ofWell.location()
. The notebook does not cover geographic CRS's. There's still a short example inWell.ipynb
. - Fixed some buggy behaviour when creating 'empty' wells, and added example to top of
tutorials/Well.ipynb
. - You can now pass a URL directly to
Well.from_las()
and it will try to read it.
- Implemented basis updating when slicing. In general, you probably want to 'slice' (get a subcurve) using
curve.to_basis()
because you can use depth to get the section you want. But if you want to use indexing, likecurve[100:110]
, this operation now updatescurve.start
so thatcurve.basis
is therefore updated. - Breaking change:
utils.top_and_tail
now only works on single arrays, and returns a single array.
- Fixed a bug in
project.df()
that was building the DataFrame incorrectly.
- There are breaking changes in this release.
- Export the curves in the current
well.data
to Pandas DataFrame withwell.df()
. Previously, this function returned the DataFrame of the associated LAS file, which is still available inwell.las.df()
. - Export the curves in the current Project as a Pandas DataFrame with a dual index: UWI and depth.
- Made the APIs of various functions more consistent, e.g. with
keys
always being beforebasis
. This regularization will continue. - Made the way to retrieve
keys
more consistent, using the flattened list of keys, if provided, or getting all those keys corresponding to curves, if not. Some of the well methods used to break if there were striplogs inwell.data
, but they should behave a bit better now. - Thanks to Jesper Dramsch, the documentation should now be working again. Thanks Jesper!
- Added this
CHANGES.md
file. - Synthetics don't work anyway and are definitely broken right now. Test is withheld for now.