Skip to content

Commit 0973260

Browse files
authored
Merge pull request #344 from raysect/development
Release 0.6.1
2 parents 4f68105 + 6250059 commit 0973260

37 files changed

+3743
-599
lines changed

.travis.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
11
language: python
22
python:
33
- "3.6"
4+
- "3.7"
5+
env:
6+
- NUMPY_VERSION=1.14.6
7+
- NUMPY_VERSION=1.16.6
8+
- NUMPY_VERSION=1.18.1
49
install:
5-
- pip install numpy scipy matplotlib cython
10+
- pip install numpy==$NUMPY_VERSION scipy matplotlib cython>=0.28
611
- dev/build.sh
712
# command to run tests
813
script: dev/test.sh

CHANGELOG.txt

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,20 @@
11
Raysect Changelog
22
=================
33

4+
Release 0.6.1 (2 Feb 2019)
5+
---------------------------
6+
7+
New:
8+
* Added relational operators to the FunctionXD objects.
9+
* Added abs() operator to FunctionXD objects.
10+
* Square root (SqrtXD) and error functions (ErfXD) added to FunctionXD package.
11+
* Added SpectralAdaptiveSampler1D and SpectralAdaptiveSampler2D.
12+
* FullFrameSampler2D, RGBAdaptiveSampler2D, MonoAdaptiveSampler2D now supports pixel masks directly.
13+
14+
Bug fixes:
15+
* MulticoreEngine render engine now passes back exceptions from worker processes and correctly terminates the render.
16+
17+
418
Release 0.6.0 (13 Nov 2019)
519
---------------------------
620

@@ -33,7 +47,7 @@ Bug fixes:
3347
New:
3448
* Added quaternions to the core math package.
3549
* Added low level cython functions to calculate mininum, maximum and peak_to_peak for memoryviews. (contributor: Dr Jack Lovell)
36-
* Added a material blending modifier to the raysect.optical.material.modifiers package.
50+
* Added a material blending modifier to the raysect.optical.material.modifiers package.relational
3751

3852

3953
Release 0.5.5 (4 Mar 2019)
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
Install docker:
2+
3+
sudo apt install docker.io
4+
5+
Create a temporary folder, enter it and clone the new release:
6+
7+
git clone git@github.com:raysect/source.git
8+
9+
Start the manylinux docker container (this will download the container, mount the current folder as "io", and start an interactive session):
10+
11+
sudo docker run -ti -v $(pwd):/io quay.io/pypa/manylinux2010_x86_64 /bin/bash
12+
13+
This will drop you into the manylinux container terminal. The /opt/python folder in the container holds the various versions of python. This example targets python 3.7. Adjust the paths as appropriate to build bdists for different python versions.
14+
15+
cd io/source
16+
/opt/python/cp37-cp37m/bin/python -m pip install cython numpy==1.14.6
17+
/opt/python/cp37-cp37m/bin/python setup.py bdist_wheel
18+
auditwheel repair dist/raysect-0.6.1-cp37-cp37m-linux_x86_64.whl
19+
20+
This will compile the wheel and repair any library references to produce the manylinux wheel files in a folder ./wheelhouse. e.g. raysect-0.6.1-cp37-cp37m-manylinux1_x86_64.whl and raysect-0.6.0-cp37-cp37m-manylinux2010_x86_64.whl.
21+
22+
These can then be uploaded to pypi (just the manylinux1 packages for now).
23+
24+
For more info see: https://uwekorn.com/2019/09/15/how-we-build-apache-arrows-manylinux-wheels.html

docs/source/api_reference/optical/pipelines.rst

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@ Power
6161
.. autoclass:: raysect.optical.observer.pipeline.mono.PowerPipeline0D
6262
:show-inheritance:
6363

64+
.. autoclass:: raysect.optical.observer.pipeline.mono.PowerPipeline1D
65+
:show-inheritance:
66+
6467
.. autoclass:: raysect.optical.observer.pipeline.mono.PowerPipeline2D
6568
:members: display_auto_exposure, display_unsaturated_fraction, display_update_time, save
6669
:show-inheritance:
@@ -72,6 +75,9 @@ Radiance
7275
.. autoclass:: raysect.optical.observer.pipeline.mono.RadiancePipeline0D
7376
:show-inheritance:
7477

78+
.. autoclass:: raysect.optical.observer.pipeline.mono.RadiancePipeline1D
79+
:show-inheritance:
80+
7581
.. autoclass:: raysect.optical.observer.pipeline.mono.RadiancePipeline2D
7682
:show-inheritance:
7783

@@ -86,6 +92,13 @@ Spectral
8692
:members: to_spectrum
8793
:show-inheritance:
8894

95+
.. autoclass:: raysect.optical.observer.pipeline.spectral.SpectralPowerPipeline1D
96+
:show-inheritance:
97+
98+
.. autoclass:: raysect.optical.observer.pipeline.spectral.SpectralRadiancePipeline1D
99+
:members: to_spectrum
100+
:show-inheritance:
101+
89102
.. autoclass:: raysect.optical.observer.pipeline.spectral.SpectralPowerPipeline2D
90103
:show-inheritance:
91104

@@ -97,11 +110,35 @@ Spectral
97110
Frame Samplers
98111
--------------
99112

113+
.. autoclass:: raysect.optical.observer.sampler1d.FullFrameSampler1D
114+
:show-inheritance:
115+
116+
.. autoclass:: raysect.optical.observer.sampler1d.MonoAdaptiveSampler1D
117+
:show-inheritance:
118+
119+
.. autoclass:: raysect.optical.observer.sampler1d.SpectralAdaptiveSampler1D
120+
:show-inheritance:
121+
100122
.. autoclass:: raysect.optical.observer.sampler2d.FullFrameSampler2D
101123
:show-inheritance:
102124

125+
.. autoclass:: raysect.optical.observer.sampler2d.MaskedFrameSampler2D
126+
:show-inheritance:
127+
103128
.. autoclass:: raysect.optical.observer.sampler2d.MonoAdaptiveSampler2D
104129
:show-inheritance:
105130

131+
.. autoclass:: raysect.optical.observer.sampler2d.MaskedMonoAdaptiveSampler2D
132+
:show-inheritance:
133+
134+
.. autoclass:: raysect.optical.observer.sampler2d.SpectralAdaptiveSampler2D
135+
:show-inheritance:
136+
137+
.. autoclass:: raysect.optical.observer.sampler2d.MaskedSpectralAdaptiveSampler2D
138+
:show-inheritance:
139+
106140
.. autoclass:: raysect.optical.observer.sampler2d.RGBAdaptiveSampler2D
107141
:show-inheritance:
142+
143+
.. autoclass:: raysect.optical.observer.sampler2d.MaskedRGBAdaptiveSampler2D
144+
:show-inheritance:

raysect/VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.6.0
1+
0.6.1

raysect/core/math/function/function1d/base.pxd

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
3030
# POSSIBILITY OF SUCH DAMAGE.
3131

32+
3233
cdef class Function1D:
3334
cdef double evaluate(self, double x) except? -1e999
3435

@@ -57,6 +58,34 @@ cdef class ModuloFunction1D(Function1D):
5758
cdef Function1D _function1, _function2
5859

5960

61+
cdef class AbsFunction1D(Function1D):
62+
cdef Function1D _function
63+
64+
65+
cdef class EqualsFunction1D(Function1D):
66+
cdef Function1D _function1, _function2
67+
68+
69+
cdef class NotEqualsFunction1D(Function1D):
70+
cdef Function1D _function1, _function2
71+
72+
73+
cdef class LessThanFunction1D(Function1D):
74+
cdef Function1D _function1, _function2
75+
76+
77+
cdef class GreaterThanFunction1D(Function1D):
78+
cdef Function1D _function1, _function2
79+
80+
81+
cdef class LessEqualsFunction1D(Function1D):
82+
cdef Function1D _function1, _function2
83+
84+
85+
cdef class GreaterEqualsFunction1D(Function1D):
86+
cdef Function1D _function1, _function2
87+
88+
6089
cdef class AddScalar1D(Function1D):
6190
cdef double _value
6291
cdef Function1D _function
@@ -95,3 +124,43 @@ cdef class PowScalarFunction1D(Function1D):
95124
cdef class PowFunctionScalar1D(Function1D):
96125
cdef double _value
97126
cdef Function1D _function
127+
128+
129+
cdef class EqualsScalar1D(Function1D):
130+
cdef double _value
131+
cdef Function1D _function
132+
133+
134+
cdef class NotEqualsScalar1D(Function1D):
135+
cdef double _value
136+
cdef Function1D _function
137+
138+
139+
cdef class LessThanScalar1D(Function1D):
140+
cdef double _value
141+
cdef Function1D _function
142+
143+
144+
cdef class GreaterThanScalar1D(Function1D):
145+
cdef double _value
146+
cdef Function1D _function
147+
148+
149+
cdef class LessEqualsScalar1D(Function1D):
150+
cdef double _value
151+
cdef Function1D _function
152+
153+
154+
cdef class GreaterEqualsScalar1D(Function1D):
155+
cdef double _value
156+
cdef Function1D _function
157+
158+
159+
cdef inline bint is_callable(object f):
160+
"""
161+
Tests if an object is a python callable or function object.
162+
163+
:param object f: Object to test.
164+
:return: True if callable, False otherwise.
165+
"""
166+
return isinstance(f, Function1D) or callable(f)

0 commit comments

Comments
 (0)