modules.applications.simulation.free_fermion.free_fermion.FreeFermion

class FreeFermion

Bases: Simulation

__init__()

Initializes the FreeFermion class.

Methods

__init__()

Initializes the FreeFermion class.

create_and_store_plot(n_trot, dt, ...)

get_application()

Gets the application.

get_available_submodule_options()

Gets the list of available options.

get_available_submodules(option)

If the module has submodules depending on certain options, this method should adjust the submodule_options accordingly.

get_default_submodule(option)

Given an option string by the user, this returns a submodule.

get_depending_parameters(option, config)

If the module has parameters depending on certain options, this method should return the parameters for the given option.

get_parameter_options()

Returns the parameter options for the application.

get_requirements()

Returns a list of requirements for the FreeFermion application.

get_submodule(option)

Submodule is instantiated according to the information given in self.sub_options.

postprocess(input_data, conf, **kwargs)

Processes data passed to this module from the submodule.

preprocess(input_data, conf, **kwargs)

Generate data that gets passed to the next submodule.

save(path, iter_count)

This method is required to implement the application, but at the moment it does nothing.

class Config

Bases: TypedDict

A configuration dictionary for the application.

clear() None.  Remove all items from D.
copy() a shallow copy of D
fromkeys(value=None, /)

Create a new dictionary with keys from iterable and values set to value.

get(key, default=None, /)

Return the value for key if key is in the dictionary, else default.

items() a set-like object providing a view on D's items
keys() a set-like object providing a view on D's keys
pop(k[, d]) v, remove specified key and return the corresponding value.

If the key is not found, return the default if given; otherwise, raise a KeyError.

popitem()

Remove and return a (key, value) pair as a 2-tuple.

Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.

setdefault(key, default=None, /)

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

update([E, ]**F) None.  Update D from mapping/iterable E and F.

If E is present and has a .keys() method, then does: for k in E.keys(): D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() an object providing a view on D's values
get_application() any

Gets the application.

Returns:

self.application

get_available_submodule_options() list

Gets the list of available options.

Returns:

List of module options

get_available_submodules(option: list) list

If the module has submodules depending on certain options, this method should adjust the submodule_options accordingly.

Parameters:

option -- List of chosen options

Returns:

List of available submodules

get_default_submodule(option: str) AerSimulator

Given an option string by the user, this returns a submodule.

Parameters:

option -- String with the chosen submodule

Returns:

Module of type Core

Raises:

NotImplementedError -- If the option is not recognized

get_depending_parameters(option: str, config: dict) dict

If the module has parameters depending on certain options, this method should return the parameters for the given option.

Parameters:
  • option -- The chosen option

  • config -- Current config dictionary

Returns:

The parameters for the given option

get_parameter_options()

Returns the parameter options for the application.

static get_requirements() list

Returns a list of requirements for the FreeFermion application.

Returns:

A list of dictionaries containing the name and version of required packages

get_submodule(option: str) Core

Submodule is instantiated according to the information given in self.sub_options. If self.sub_options is None, get_default_submodule is called as a fallback.

Parameters:

option -- String with the options

Returns:

Instance of a module

postprocess(input_data: BackendResult, conf: Config, **kwargs) tuple[any, float]

Processes data passed to this module from the submodule.

Parameters:
  • input_data -- The input data for postprocessing

  • conf -- The configuration parameters

Returns:

A tuple containing the processed solution quality and the time taken for evaluation

preprocess(input_data: any, conf: Config, **kwargs) tuple[BackendInput, float]

Generate data that gets passed to the next submodule.

Parameters:
  • input_data -- The input data for preprocessing

  • conf -- The configuration parameters

Returns:

A tuple containing the preprocessed output and the time taken for preprocessing

save(path, iter_count) None

This method is required to implement the application, but at the moment it does nothing.