simpeg.fields.TimeFields#
- class simpeg.fields.TimeFields(simulation, knownFields=None, aliasFields=None, dtype=None)[source]#
- Bases: - Fields- Base class for storing TDEM fields. - TimeFieldsis a base class for storing discrete field solutions for simulations that use discrete time-stepping; see- simpeg.simulation.BaseTimeSimulation. Generally only one field solution (e.g.- 'eSolution',- 'phiSolution',- 'bSolution') is stored. However, it may be possible to extract multiple field types (e.g.- 'e',- 'b',- 'j',- 'h') on the fly from the fields object. The field solution that is stored and the field types that can be extracted depend on the formulation used by the associated simulation. See the example below to learn how fields are extracted from fields objects.- Parameters:
- simulationsimpeg.simulation.BaseTimeSimulation
- The simulation object used to compute the discrete field solution. 
- knownFieldsdictof{key:str},optional
- Dictionary defining the field solutions that are stored and where on the mesh they are discretized. E.g. - {'eSolution': 'E', 'bSolution': 'F'}would store the eSolution on edges and bSolution on faces. The- strmust be one of {- 'CC',- 'N',- 'E',- 'F'}.
- aliasFieldsdictof{key:list},optional
- Set aliases to extract different field types from the field solutions that are stored by the fields object. The - keydefines the name you would like to use when extracting a given field type from the fields object. In order, the list contains:- the key for the known field solution that is used to compute the field type 
- where the output field type lives { - 'CC',- 'N',- 'E',- 'F'}
- the name of the method used to compute the output field. 
 - E.g. - {'b': ['eSolution', 'F', '_b']}is an alias that would allow you to extract a field type (‘b’) that lives on mesh faces (‘F’) from the E-field solution (‘eSolution’) by calling a method (‘_b’).
- dtypedtypeordictof{strdtype},optional
- Set the Python data type for each numerical field solution that is stored in the fields object. E.g. - float,- complex,- {'eSolution': complex, 'bSolution': complex}.
 
- simulation
 - Attributes - The aliased fields of the object. - Approximate cost of storing all of the known fields in MB. - Python data type(s) used to store the fields. - The field solutions and where they are discretized on the mesh. - Mesh used by the simulation. - The simulation object used to compute the field solution. - Survey used by the simulation. - Methods - startup()- Run startup to connect the simulation's discrete attributes to the fields object. - Examples - We want to access the fields for a discrete solution with \(\mathbf{e}\) discretized to edges and \(\mathbf{b}\) discretized to faces. To extract the fields for all sources: - f = simulation.fields(m) e = f[:, 'e', :] b = f[:, 'b', :] - The array - ereturned will have shape (n_edges, n_sources, n_steps). And the array- breturned will have shape (n_faces, n_sources, n_steps). We can also extract the fields for a subset of the source list used for the simulation and/or a subset of the time steps as follows:- f = simulation.fields(m) e = f[source_list, 'e', t_inds] b = f[source_list, 'b', t_inds] 
