pulsarbat.Phase#

class pulsarbat.Phase(phase1, phase2=None, copy=True, subok=False)[source]#

Represent two-part phase.

With one part the integer cycle count and the other the fractional phase.

The class is a high-precision version of ~astropy.coordinates.Angle that aims to behave just like it, but use its precision in operations where possible – decaying to a ~astropy.units.Quantity otherwise.

For instance, addition and subtraction preserve precision, as do multiplication and division with dimensionless quantities. Similarly, trigonometric functions use just the fractional phase.

The phase can either be purely real or purely imaginary, not mixed. If imaginary, using it in ~numpy.exp will again preserve precision.

Parameters:
phase1, phase2array or ~astropy.units.Quantity

Two-part phase. If not quantities, the assumed units are cycles.

copybool, optional

Ensure a copy is made. Only relevant if phase1 is a Phase and phase2 is not given.

subokbool, optional

If False (default), the returned array will be forced to be a Phase. Otherwise, Phase subclasses will be passed through. Only relevant if phase1 or phase2 is a Phase subclass.

Notes

The machinery to keep precision is not complete; in particular, reductions such as summing along an axis will currently lose precision.

Strings passed in to phase1 or phase2 are first converted to standard doubles, which may lead to loss of precision. For long strings, use the ~baseband_tasks.phases.Phase.from_string class method instead.

__init__(*args, **kwargs)#

Methods

__init__(*args, **kwargs)

all([axis, out, keepdims, where])

Returns True if all elements evaluate to True.

any([axis, out, keepdims, where])

Returns True if any of the elements of a evaluate to True.

argmax([axis, out])

Return indices of the maximum values along the given axis.

argmin([axis, out])

Return indices of the minimum values along the given axis.

argpartition(kth[, axis, kind, order])

Returns the indices that would partition this array.

argsort([axis])

Returns the indices that would sort the phase array.

astype(dtype[, order, casting, subok, copy])

Copy of the array, cast to a specified type.

byteswap([inplace])

Swap the bytes of the array elements

choose(choices[, out, mode])

Use an index array to construct a new array from a set of choices.

clip([min, max, out])

Return an array whose values are limited to [min, max].

compress(condition[, axis, out])

Return selected slices of this array along given axis.

conj()

Complex-conjugate all elements.

conjugate()

Return the complex conjugate, element-wise.

copy([order])

Return a copy of the array.

cumprod([axis, dtype, out])

Return the cumulative product of the elements along the given axis.

cumsum([axis, dtype, out])

Return the cumulative sum of the elements along the given axis.

decompose([bases])

Generates a new Quantity with the units decomposed.

diagonal([offset, axis1, axis2])

Return specified diagonals.

diff([n, axis])

dot(b[, out])

dump(file)

Not implemented, use .value.dump() instead.

dumps()

Not implemented, use .value.dumps() instead.

ediff1d([to_end, to_begin])

fill(value)

Fill the array with a scalar value.

flatten([order])

Return a copy of the array collapsed into one dimension.

from_angles(phase1[, phase2, factor, ...])

Create a Phase instance from two angles.

from_string(string)

Create Phase instance from a long string.

getfield(dtype[, offset])

Returns a field of the given array as a certain type.

insert(obj, values[, axis])

Insert values along the given axis before the given indices and return a new ~astropy.units.Quantity object.

is_within_bounds([lower, upper])

Check if all angle(s) satisfy lower <= angle < upper.

item(*args)

Copy an element of an array to a scalar Quantity and return it.

itemset(*args)

Insert scalar into an array (scalar is cast to array's dtype, if possible)

max([axis, out, keepdims])

Maximum along a given axis.

mean([axis, dtype, out, keepdims, where])

Returns the average of the array elements along given axis.

min([axis, out, keepdims])

Minimum along a given axis.

nansum([axis, out, keepdims, initial, where])

Deprecated since version 5.3.

newbyteorder([new_order])

Return the array with the same data viewed with a different byte order.

nonzero()

Return the indices of the elements that are non-zero.

partition(kth[, axis, kind, order])

Rearranges the elements in the array in such a way that the value of the element in kth position is in the position it would be in a sorted array.

prod([axis, dtype, out, keepdims, initial, ...])

Return the product of the array elements over the given axis

ptp([axis, out, keepdims])

Peak to peak (maximum - minimum) along a given axis.

put(indices, values[, mode])

Set a.flat[n] = values[n] for all n in indices.

ravel([order])

Return a flattened array.

repeat(repeats[, axis])

Repeat elements of an array.

reshape(shape[, order])

Returns an array containing the same data with a new shape.

resize(new_shape[, refcheck])

Change shape and size of array in-place.

round([decimals, out])

Return a with each element rounded to the given number of decimals.

searchsorted(v[, side, sorter])

Find indices where elements of v should be inserted in a to maintain order.

setfield(val, dtype[, offset])

Put a value into a specified place in a field defined by a data-type.

setflags([write, align, uic])

Set array flags WRITEABLE, ALIGNED, WRITEBACKIFCOPY, respectively.

sort([axis])

Return a copy sorted along the specified axis.

squeeze([axis])

Remove axes of length one from a.

std([axis, dtype, out, ddof, keepdims, where])

Returns the standard deviation of the array elements along given axis.

sum([axis, dtype, out, keepdims, initial, where])

Return the sum of the array elements over the given axis.

swapaxes(axis1, axis2)

Return a view of the array with axis1 and axis2 interchanged.

take(indices[, axis, out, mode])

Return an array formed from the elements of a at the given indices.

to(unit[, equivalencies])

The phase in a different unit.

to_string([unit, decimal, sep, precision, ...])

A string representation of the Phase.

to_value([unit, equivalencies])

The numerical value, possibly in a different unit.

tobytes([order])

Not implemented, use .value.tobytes() instead.

tofile(fid[, sep, format])

Not implemented, use .value.tofile() instead.

tolist()

Return the array as an a.ndim-levels deep nested list of Python scalars.

tostring([order])

Not implemented, use .value.tostring() instead.

trace([offset, axis1, axis2, dtype, out])

Return the sum along diagonals of the array.

transpose(*axes)

Returns a view of the array with axes transposed.

var([axis, dtype, out, ddof, keepdims, where])

Returns the variance of the array elements, along given axis.

view([dtype][, type])

New view of array with the same data.

wrap_at(wrap_angle[, inplace])

Wrap the ~astropy.coordinates.Angle object at the given wrap_angle.

Attributes

T

View of the transposed array.

base

Base object if memory is from some other object.

cgs

Returns a copy of the current Quantity instance with CGS units.

ctypes

An object to simplify the interaction of the array with the ctypes module.

cycle

Full cycle, including phase, as a regular Angle.

data

Python buffer object pointing to the start of the array's data.

dms

The angle's value in degrees, as a (d, m, s) named tuple.

dtype

Data-type of the array's elements.

equivalencies

A list of equivalencies that will be applied by default during unit conversions.

flags

Information about the memory layout of the array.

flat

A 1-D iterator over the Quantity array.

frac

Fractional phase, between -0.5 and 0.5 cycles.

hms

The angle's value in hours, as a named tuple with (h, m, s) members.

hour

The angle's value in hours (read-only property).

imag

The imaginary part of the array.

info

Container for meta information like name, description, format.

int

Rounded cycle count.

isscalar

True if the value of this quantity is a scalar, or False if it is an array-like object.

itemsize

Length of one array element in bytes.

nbytes

Total bytes consumed by the elements of the array.

ndim

Number of array dimensions.

real

The real part of the array.

shape

Tuple of array dimensions.

si

Returns a copy of the current Quantity instance with SI units.

signed_dms

The angle's value in degrees, as a (sign, d, m, s) named tuple.

size

Number of elements in the array.

strides

Tuple of bytes to step in each dimension when traversing an array.

unit

A ~astropy.units.UnitBase object representing the unit of this quantity.

value

The numerical value.