# tidy3d.YeeGrid#

class tidy3d.YeeGrid#

Holds the yee grid coordinates for each of the E and H positions.

Parameters
• E (FieldGrid) – Coordinates of the locations of all three components of the electric field.

• H (FieldGrid) – Coordinates of the locations of all three components of the magnetic field.

Example

```>>> x = np.linspace(-1, 1, 10)
>>> y = np.linspace(-1, 1, 11)
>>> z = np.linspace(-1, 1, 12)
>>> coords = Coords(x=x, y=y, z=z)
>>> field_grid = FieldGrid(x=coords, y=coords, z=coords)
>>> yee_grid = YeeGrid(E=field_grid, H=field_grid)
>>> Ex_coords = yee_grid.E.x
```

Show JSON schema
```{
"title": "YeeGrid",
"description": "Holds the yee grid coordinates for each of the E and H positions.\n\nParameters\n----------\nE : FieldGrid\n    Coordinates of the locations of all three components of the electric field.\nH : FieldGrid\n    Coordinates of the locations of all three components of the magnetic field.\n\nExample\n-------\n>>> x = np.linspace(-1, 1, 10)\n>>> y = np.linspace(-1, 1, 11)\n>>> z = np.linspace(-1, 1, 12)\n>>> coords = Coords(x=x, y=y, z=z)\n>>> field_grid = FieldGrid(x=coords, y=coords, z=coords)\n>>> yee_grid = YeeGrid(E=field_grid, H=field_grid)\n>>> Ex_coords = yee_grid.E.x",
"type": "object",
"properties": {
"E": {
"title": "Electric Field Grid",
"description": "Coordinates of the locations of all three components of the electric field.",
"allOf": [
{
"\$ref": "#/definitions/FieldGrid"
}
]
},
"H": {
"title": "Electric Field Grid",
"description": "Coordinates of the locations of all three components of the magnetic field.",
"allOf": [
{
"\$ref": "#/definitions/FieldGrid"
}
]
},
"type": {
"title": "Type",
"default": "YeeGrid",
"enum": [
"YeeGrid"
],
"type": "string"
}
},
"required": [
"E",
"H"
],
"definitions": {
"Coords": {
"title": "Coords",
"description": "Holds data about a set of x,y,z positions on a grid.\n\nParameters\n----------\nx : ArrayLike_dtype=<class 'float'>_ndim=1\n    1-dimensional array of x coordinates.\ny : ArrayLike_dtype=<class 'float'>_ndim=1\n    1-dimensional array of y coordinates.\nz : ArrayLike_dtype=<class 'float'>_ndim=1\n    1-dimensional array of z coordinates.\n\nExample\n-------\n>>> x = np.linspace(-1, 1, 10)\n>>> y = np.linspace(-1, 1, 11)\n>>> z = np.linspace(-1, 1, 12)\n>>> coords = Coords(x=x, y=y, z=z)",
"type": "object",
"properties": {
"x": {
"title": "ArrayLike",
"description": "1-dimensional array of x coordinates.",
"type": "ArrayLike"
},
"y": {
"title": "ArrayLike",
"description": "1-dimensional array of y coordinates.",
"type": "ArrayLike"
},
"z": {
"title": "ArrayLike",
"description": "1-dimensional array of z coordinates.",
"type": "ArrayLike"
},
"type": {
"title": "Type",
"default": "Coords",
"enum": [
"Coords"
],
"type": "string"
}
},
"required": [
"x",
"y",
"z"
],
},
"FieldGrid": {
"title": "FieldGrid",
"description": "Holds the grid data for a single field.\n\nParameters\n----------\nx : Coords\n    x,y,z coordinates of the locations of the x-component of a vector field.\ny : Coords\n    x,y,z coordinates of the locations of the y-component of a vector field.\nz : Coords\n    x,y,z coordinates of the locations of the z-component of a vector field.\n\nExample\n-------\n>>> x = np.linspace(-1, 1, 10)\n>>> y = np.linspace(-1, 1, 11)\n>>> z = np.linspace(-1, 1, 12)\n>>> coords = Coords(x=x, y=y, z=z)\n>>> field_grid = FieldGrid(x=coords, y=coords, z=coords)",
"type": "object",
"properties": {
"x": {
"title": "X Positions",
"description": "x,y,z coordinates of the locations of the x-component of a vector field.",
"allOf": [
{
"\$ref": "#/definitions/Coords"
}
]
},
"y": {
"title": "Y Positions",
"description": "x,y,z coordinates of the locations of the y-component of a vector field.",
"allOf": [
{
"\$ref": "#/definitions/Coords"
}
]
},
"z": {
"title": "Z Positions",
"description": "x,y,z coordinates of the locations of the z-component of a vector field.",
"allOf": [
{
"\$ref": "#/definitions/Coords"
}
]
},
"type": {
"title": "Type",
"default": "FieldGrid",
"enum": [
"FieldGrid"
],
"type": "string"
}
},
"required": [
"x",
"y",
"z"
],
}
}
}
```

attribute E: tidy3d.components.grid.grid.FieldGrid [Required]#

Coordinates of the locations of all three components of the electric field.

attribute H: tidy3d.components.grid.grid.FieldGrid [Required]#

Coordinates of the locations of all three components of the magnetic field.

Automatically place “type” field with model name in the model field dictionary.

classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) Model#

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

copy(**kwargs) #

Copy a Tidy3dBaseModel. With `deep=True` as default.

dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny#

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

classmethod dict_from_file(fname: str, group_path: Optional[str] = None) dict#

Loads a dictionary containing the model from a .yaml, .json, or .hdf5 file.

Parameters
• fname (str) – Full path to the .yaml or .json file to load the `Tidy3dBaseModel` from.

• group_path (str, optional) – Path to a group inside the file to use as the base level.

Returns

A dictionary containing the model.

Return type

dict

Example

```>>> simulation = Simulation.from_file(fname='folder/sim.json')
```
classmethod dict_from_hdf5(fname: str, group_path: str = '') dict#

Loads a dictionary containing the model contents from a .hdf5 file.

Parameters
• fname (str) – Full path to the .hdf5 file to load the `Tidy3dBaseModel` from.

• group_path (str, optional) – Path to a group inside the file to selectively load a sub-element of the model only.

Returns

Dictionary containing the model.

Return type

dict

Example

```>>> sim_dict = Simulation.dict_from_hdf5(fname='folder/sim.hdf5')
```
classmethod dict_from_json(fname: str) dict#

Load dictionary of the model from a .json file.

Parameters

fname (str) – Full path to the .json file to load the `Tidy3dBaseModel` from.

Returns

A dictionary containing the model.

Return type

dict

Example

```>>> sim_dict = Simulation.dict_from_json(fname='folder/sim.json')
```
classmethod dict_from_yaml(fname: str) dict#

Load dictionary of the model from a .yaml file.

Parameters

fname (str) – Full path to the .yaml file to load the `Tidy3dBaseModel` from.

Returns

A dictionary containing the model.

Return type

dict

Example

```>>> sim_dict = Simulation.dict_from_yaml(fname='folder/sim.yaml')
```
classmethod from_file(fname: str, group_path: Optional[str] = None, **parse_obj_kwargs) #

Loads a `Tidy3dBaseModel` from .yaml, .json, or .hdf5 file.

Parameters
• fname (str) – Full path to the .yaml or .json file to load the `Tidy3dBaseModel` from.

• group_path (str, optional) – Path to a group inside the file to use as the base level. Only for `.hdf5` files. Starting / is optional.

• **parse_obj_kwargs – Keyword arguments passed to either pydantic’s `parse_obj` function when loading model.

Returns

An instance of the component class calling load.

Return type

`Tidy3dBaseModel`

Example

```>>> simulation = Simulation.from_file(fname='folder/sim.json')
```
classmethod from_hdf5(fname: str, group_path: str = '', **parse_obj_kwargs) #

Loads `Tidy3dBaseModel` instance to .hdf5 file.

Parameters
• fname (str) – Full path to the .hdf5 file to load the `Tidy3dBaseModel` from.

• group_path (str, optional) – Path to a group inside the file to selectively load a sub-element of the model only. Starting / is optional.

• **parse_obj_kwargs – Keyword arguments passed to pydantic’s `parse_obj` method.

Example

```>>> simulation.to_hdf5(fname='folder/sim.hdf5')
```
classmethod from_json(fname: str, **parse_obj_kwargs) #

Load a `Tidy3dBaseModel` from .json file.

Parameters

fname (str) – Full path to the .json file to load the `Tidy3dBaseModel` from.

Returns

• `Tidy3dBaseModel` – An instance of the component class calling load.

• **parse_obj_kwargs – Keyword arguments passed to pydantic’s `parse_obj` method.

Example

```>>> simulation = Simulation.from_json(fname='folder/sim.json')
```
classmethod from_orm(obj: Any) Model#
classmethod from_yaml(fname: str, **parse_obj_kwargs) #

Loads `Tidy3dBaseModel` from .yaml file.

Parameters
• fname (str) – Full path to the .yaml file to load the `Tidy3dBaseModel` from.

• **parse_obj_kwargs – Keyword arguments passed to pydantic’s `parse_obj` method.

Returns

An instance of the component class calling from_yaml.

Return type

`Tidy3dBaseModel`

Example

```>>> simulation = Simulation.from_yaml(fname='folder/sim.yaml')
```
classmethod generate_docstring() str#

Generates a docstring for a Tidy3D mode and saves it to the __doc__ of the class.

classmethod get_sub_model(group_path: str, model_dict: dict | list) dict#

Get the sub model for a given group path.

static get_tuple_group_name(index: int) str#

Get the group name of a tuple element.

static get_tuple_index(key_name: str) int#

Get the index into the tuple based on its group name.

help(methods: bool = False) None#

Prints message describing the fields and methods of a `Tidy3dBaseModel`.

Parameters

methods (bool = False) – Whether to also print out information about object’s methods.

Example

```>>> simulation.help(methods=True)
```
json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode#

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

classmethod parse_file(path: Union[str, pathlib.Path], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model#
classmethod parse_obj(obj: Any) Model#
classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: pydantic.parse.Protocol = None, allow_pickle: bool = False) Model#
classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') DictStrAny#
classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) unicode#
to_file(fname: str) None#

Exports `Tidy3dBaseModel` instance to .yaml, .json, or .hdf5 file

Parameters

fname (str) – Full path to the .yaml or .json file to save the `Tidy3dBaseModel` to.

Example

```>>> simulation.to_file(fname='folder/sim.json')
```
to_hdf5(fname: str) None#

Exports `Tidy3dBaseModel` instance to .hdf5 file.

Parameters

fname (str) – Full path to the .hdf5 file to save the `Tidy3dBaseModel` to.

Example

```>>> simulation.to_hdf5(fname='folder/sim.hdf5')
```
to_json(fname: str) None#

Exports `Tidy3dBaseModel` instance to .json file

Parameters

fname (str) – Full path to the .json file to save the `Tidy3dBaseModel` to.

Example

```>>> simulation.to_json(fname='folder/sim.json')
```
to_yaml(fname: str) None#

Exports `Tidy3dBaseModel` instance to .yaml file.

Parameters

fname (str) – Full path to the .yaml file to save the `Tidy3dBaseModel` to.

Example

```>>> simulation.to_yaml(fname='folder/sim.yaml')
```
classmethod tuple_to_dict(tuple_values: tuple) dict#

How we generate a dictionary mapping new keys to tuple values for hdf5.

classmethod update_forward_refs(**localns: Any) None#

Try to update ForwardRefs on fields based on this Model, globalns and localns.

updated_copy(**kwargs) #

Make copy of a component instance with `**kwargs` indicating updated field values.

classmethod validate(value: Any) Model#
property grid_dict#

The Yee grid coordinates associated to various field components as a dictionary.