tidy3d.components.data.data_array.DataArray#

class DataArray[source]#

Bases: DataArray

Subclass of xr.DataArray that requires _dims to match the keys of the coords.

Attributes

abs

Absolute value of data array.

Methods

assign_coord_attrs(val)

Assign the correct coordinate attributes to the DataArray.

assign_data_attrs(val)

Assign the correct data attributes to the DataArray.

check_unloaded_data(val)

If the data comes in as the raw data array string, raise a custom warning.

from_file(fname, group_path)

Load an DataArray from an hdf5 file with a given path to the group.

from_hdf5(fname, group_path)

Load an DataArray from an hdf5 file with a given path to the group.

item(*args)

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

multiply_at(value, coord_name, indices)

Multiply self by value at indices into .

searchsorted(v[, side, sorter])

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

to_hdf5(fname, group_path)

Save an xr.DataArray to the hdf5 file or file handle with a given path to the group.

to_hdf5_handle(f_handle, group_path)

Save an xr.DataArray to the hdf5 file handle with a given path to the group.

validate_dims(val)

Make sure the dims are the same as _dims, then put them in the correct order.

Inherited Common Usage

classmethod __get_validators__()[source]#

Validators that get run when DataArray objects are added to pydantic models.

classmethod check_unloaded_data(val)[source]#

If the data comes in as the raw data array string, raise a custom warning.

classmethod validate_dims(val)[source]#

Make sure the dims are the same as _dims, then put them in the correct order.

classmethod assign_data_attrs(val)[source]#

Assign the correct data attributes to the DataArray.

classmethod assign_coord_attrs(val)[source]#

Assign the correct coordinate attributes to the DataArray.

classmethod __modify_schema__(field_schema)[source]#

Sets the schema of DataArray object.

__eq__(other)[source]#

Whether two data array objects are equal.

property abs#

Absolute value of data array.

to_hdf5(fname, group_path)[source]#

Save an xr.DataArray to the hdf5 file or file handle with a given path to the group.

to_hdf5_handle(f_handle, group_path)[source]#

Save an xr.DataArray to the hdf5 file handle with a given path to the group.

classmethod from_hdf5(fname, group_path)[source]#

Load an DataArray from an hdf5 file with a given path to the group.

classmethod from_file(fname, group_path)[source]#

Load an DataArray from an hdf5 file with a given path to the group.

__hash__()[source]#

Generate hash value for a :class:.`DataArray` instance, needed for custom components.

multiply_at(value, coord_name, indices)[source]#

Multiply self by value at indices into .

item(*args)#

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

Parameters:

*args (Arguments (variable number and type)) –

  • none: in this case, the method only works for arrays with one element (a.size == 1), which element is copied into a standard Python scalar object and returned.

  • int_type: this argument is interpreted as a flat index into the array, specifying which element to copy and return.

  • tuple of int_types: functions as does a single int_type argument, except that the argument is interpreted as an nd-index into the array.

Returns:

z – A copy of the specified element of the array as a suitable Python scalar

Return type:

Standard Python scalar object

Notes

When the data type of a is longdouble or clongdouble, item() returns a scalar array object because there is no available Python scalar that would not lose information. Void arrays return a buffer object for item(), unless fields are defined, in which case a tuple is returned.

item is very similar to a[args], except, instead of an array scalar, a standard Python scalar is returned. This can be useful for speeding up access to elements of the array and doing arithmetic on elements of the array using Python’s optimized math.

Examples

>>> np.random.seed(123)
>>> x = np.random.randint(9, size=(3, 3))
>>> x
array([[2, 2, 6],
       [1, 3, 6],
       [1, 0, 1]])
>>> x.item(3)
1
>>> x.item(7)
0
>>> x.item((0, 1))
2
>>> x.item((2, 2))
1
searchsorted(v, side='left', sorter=None)#

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

For full documentation, see numpy.searchsorted

See also

numpy.searchsorted

equivalent function