tidy3d.components.data.ScalarFieldData
tidy3d.components.data.ScalarFieldData#
- class tidy3d.components.data.ScalarFieldData#
Stores a single scalar field in frequency-domain.
- Parameters
values (Array) – Multi-dimensional array storing the raw scalar field values in freq. domain.
data_attrs (Optional[Mapping[str, str]] = None) – Dictionary storing extra attributes associated with the monitor data.
f (Array) – [units = Hz]. Array of frequency values to use as coordintes.
x (Array) – [units = um]. Array of x location values to use as coordintes.
y (Array) – [units = um]. Array of y location values to use as coordintes.
z (Array) – [units = um]. Array of z location values to use as coordintes.
Example
>>> f = np.linspace(1e14, 2e14, 1001) >>> x = np.linspace(-1, 1, 10) >>> y = np.linspace(-2, 2, 20) >>> z = np.linspace(0, 0, 1) >>> values = (1+1j) * np.random.random((len(x), len(y), len(z), len(f))) >>> data = ScalarFieldData(values=values, x=x, y=y, z=z, f=f)
Show JSON schema
{ "title": "ScalarFieldData", "description": "Stores a single scalar field in frequency-domain.\n\nParameters\n----------\nvalues : Array\n Multi-dimensional array storing the raw scalar field values in freq. domain.\ndata_attrs : Optional[Mapping[str, str]] = None\n Dictionary storing extra attributes associated with the monitor data.\nf : Array\n [units = Hz]. Array of frequency values to use as coordintes.\nx : Array\n [units = um]. Array of x location values to use as coordintes.\ny : Array\n [units = um]. Array of y location values to use as coordintes.\nz : Array\n [units = um]. Array of z location values to use as coordintes.\n\nExample\n-------\n>>> f = np.linspace(1e14, 2e14, 1001)\n>>> x = np.linspace(-1, 1, 10)\n>>> y = np.linspace(-2, 2, 20)\n>>> z = np.linspace(0, 0, 1)\n>>> values = (1+1j) * np.random.random((len(x), len(y), len(z), len(f)))\n>>> data = ScalarFieldData(values=values, x=x, y=y, z=z, f=f)", "type": "object", "properties": { "type": { "title": "Type", "default": "ScalarFieldData", "enum": [ "ScalarFieldData" ], "type": "string" }, "values": { "title": "NumpyArray", "description": "Wrapper around numpy arrays that has a well defined json schema.", "type": "object", "properties": { "data_list": { "title": "Data List", "type": "array", "items": {} } }, "required": [ "data_list" ] }, "data_attrs": { "title": "Data Attributes", "description": "Dictionary storing extra attributes associated with the monitor data.", "type": "object", "additionalProperties": { "type": "string" } }, "f": { "title": "NumpyArray", "description": "Wrapper around numpy arrays that has a well defined json schema.", "units": "Hz", "type": "object", "properties": { "data_list": { "title": "Data List", "type": "array", "items": {} } }, "required": [ "data_list" ] }, "x": { "title": "NumpyArray", "description": "Wrapper around numpy arrays that has a well defined json schema.", "units": "um", "type": "object", "properties": { "data_list": { "title": "Data List", "type": "array", "items": {} } }, "required": [ "data_list" ] }, "y": { "title": "NumpyArray", "description": "Wrapper around numpy arrays that has a well defined json schema.", "units": "um", "type": "object", "properties": { "data_list": { "title": "Data List", "type": "array", "items": {} } }, "required": [ "data_list" ] }, "z": { "title": "NumpyArray", "description": "Wrapper around numpy arrays that has a well defined json schema.", "units": "um", "type": "object", "properties": { "data_list": { "title": "Data List", "type": "array", "items": {} } }, "required": [ "data_list" ] } }, "required": [ "values", "f", "x", "y", "z" ] }
- Fields
- attribute data_attrs: Dict[str, str] = None#
explanation of values values is a numpy array that stores the raw data associated with each
MonitorData
. It can be complex-valued or real valued, depending on whether data is in the frequency or time domain, respectively. Each axis invalues
corresponds to a specific dimension in theMonitorData
, which are supplied as arguments to theMonitorData
subclasses. The order of the dimensions is specified in the_dims
attribute of eachMonitorData
subclassDictionary storing extra attributes associated with the monitor data.
- attribute f: tidy3d.components.types.Array [Required]#
Array of frequency values to use as coordintes.
- Constraints
title = NumpyArray
description = Wrapper around numpy arrays that has a well defined json schema.
type = object
properties = {‘data_list’: {‘title’: ‘Data List’, ‘type’: ‘array’, ‘items’: {}}}
required = [‘data_list’]
- attribute values: tidy3d.components.types.Array [Required]#
Multi-dimensional array storing the raw scalar field values in freq. domain.
- Constraints
title = NumpyArray
description = Wrapper around numpy arrays that has a well defined json schema.
type = object
properties = {‘data_list’: {‘title’: ‘Data List’, ‘type’: ‘array’, ‘items’: {}}}
required = [‘data_list’]
- attribute x: tidy3d.components.types.Array [Required]#
Array of x location values to use as coordintes.
- Constraints
title = NumpyArray
description = Wrapper around numpy arrays that has a well defined json schema.
type = object
properties = {‘data_list’: {‘title’: ‘Data List’, ‘type’: ‘array’, ‘items’: {}}}
required = [‘data_list’]
- attribute y: tidy3d.components.types.Array [Required]#
Array of y location values to use as coordintes.
- Constraints
title = NumpyArray
description = Wrapper around numpy arrays that has a well defined json schema.
type = object
properties = {‘data_list’: {‘title’: ‘Data List’, ‘type’: ‘array’, ‘items’: {}}}
required = [‘data_list’]
- attribute z: tidy3d.components.types.Array [Required]#
Array of z location values to use as coordintes.
- Constraints
title = NumpyArray
description = Wrapper around numpy arrays that has a well defined json schema.
type = object
properties = {‘data_list’: {‘title’: ‘Data List’, ‘type’: ‘array’, ‘items’: {}}}
required = [‘data_list’]
- normalize(source_freq_amps: tidy3d.components.types.Array) None #
normalize the values by the amplitude of the source.