tidy3d.ContinuousWaveTimeModulation#
- class ContinuousWaveTimeModulation[source]#
Class describing modulation with a harmonic time dependence.
- Parameters:
amplitude (NonNegativeFloat = 1.0) – Real-valued maximum amplitude of the time dependence.
phase (float = 0.0) – [units = rad]. Phase shift of the time dependence.
freq0 (PositiveFloat) – [units = Hz]. Modulation frequency.
Note
\[amp\_time(t) = amplitude \cdot \ e^{i \cdot phase - 2 \pi i \cdot freq0 \cdot t}\]Note
The full space-time modulation is,
\[amp(r, t) = \Re[amp\_time(t) \cdot amp\_space(r)]\]Example
>>> cw = ContinuousWaveTimeModulation(freq0=200e12, amplitude=1, phase=0)
- __init__(**data)#
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
Methods
amp_time(time)Complex-valued source amplitude as a function of time.
coerce_numpy_scalars_for_model(data)coerce numpy scalars / size-1 arrays to native Python scalars, but only for fields whose annotations allow scalars.
construct([_fields_set])copy([deep, validate, update])Return a copy of the model.
dict(*[, include, exclude, by_alias, ...])dict_from_file(fname[, group_path, ...])Loads a dictionary containing the model from a .yaml, .json, .hdf5, or .hdf5.gz file.
dict_from_hdf5(fname[, group_path, ...])Loads a dictionary containing the model contents from a .hdf5 file.
dict_from_hdf5_gz(fname[, group_path, ...])Loads a dictionary containing the model contents from a .hdf5.gz file.
dict_from_json(fname)Load dictionary of the model from a .json file.
dict_from_yaml(fname)Load dictionary of the model from a .yaml file.
find_paths(target_field_name[, ...])Finds paths to nested model instances that have a specific field, optionally matching a value.
find_submodels(target_type)Finds all unique nested instances of a specific Tidy3D model type within this model.
from_file(fname[, group_path, lazy, on_load])Loads a
Tidy3dBaseModelfrom .yaml, .json, .hdf5, or .hdf5.gz file.from_hdf5(fname[, group_path, custom_decoders])Loads
Tidy3dBaseModelinstance to .hdf5 file.from_hdf5_gz(fname[, group_path, ...])Loads
Tidy3dBaseModelinstance to .hdf5.gz file.from_json(fname, **model_validate_kwargs)Load a
Tidy3dBaseModelfrom .json file.from_orm(obj)from_yaml(fname, **model_validate_kwargs)Loads
Tidy3dBaseModelfrom .yaml file.generate_docstring([show_default_args, ...])Generates a docstring for a Tidy3D model.
get_sub_model(group_path, model_dict)Get the sub model for a given group path.
get_submodels_by_hash()Return a mapping
{hash(submodel): [field_path, ...]}for every nestedTidy3dBaseModelinside this model.get_tuple_group_name(index)Get the group name of a tuple element.
get_tuple_index(key_name)Get the index into the tuple based on its group name.
help([methods])Prints message describing the fields and methods of a
Tidy3dBaseModel.json(*[, include, exclude, by_alias, ...])model_construct([_fields_set])model_copy(*[, update, deep])model_dump(*[, mode, include, exclude, ...])model_dump_json(*[, indent, ensure_ascii, ...])model_json_schema([by_alias, ref_template, ...])model_parametrized_name(params)model_post_init(context, /)This function is meant to behave like a BaseModel method to initialise private attributes.
model_rebuild(*[, force, raise_errors, ...])Try to rebuild the pydantic-core schema for the model.
model_validate(obj, *[, strict, extra, ...])model_validate_json(json_data, *[, strict, ...])model_validate_strings(obj, *[, strict, ...])parse_file(path, *[, content_type, ...])parse_obj(obj)parse_raw(b, *[, content_type, encoding, ...])plot(times[, val, ax])Plot the complex-valued amplitude of the time-dependence.
plot_spectrum_in_frequency_range(times, ...)Plot the complex-valued amplitude of the time-dependence.
schema([by_alias, ref_template])schema_json(*[, by_alias, ref_template])spectrum(times, freqs, dt)Complex-valued spectrum as a function of frequency.
to_file(fname)Exports
Tidy3dBaseModelinstance to .yaml, .json, or .hdf5 fileto_hdf5(fname[, custom_encoders])Exports
Tidy3dBaseModelinstance to .hdf5 file.to_hdf5_gz(fname[, custom_encoders])Exports
Tidy3dBaseModelinstance to .hdf5.gz file.to_json(fname)Exports
Tidy3dBaseModelinstance to .json fileto_static()Version of object with all autograd-traced fields removed.
to_yaml(fname)Exports
Tidy3dBaseModelinstance to .yaml file.tuple_to_dict(tuple_values)How we generate a dictionary mapping new keys to tuple values for hdf5.
update_forward_refs(**localns)updated_copy([path, deep, validate])Make copy of a component instance with
**kwargsindicating updated field values.validate(value)Attributes
Estimated maximum modulation amplitude.
model_computed_fieldsmodel_configConfiguration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
model_extraGet extra fields set during validation.
model_fieldsmodel_fields_setReturns the set of fields that have been explicitly set on this model instance.
amplitudephaseattrs- freq0#
- property max_modulation#
Estimated maximum modulation amplitude.