PAOFLOW.transport.conductor_pipeline#
Functions#
|
Allocate transport output arrays for the conductor workflow. |
|
Compute transport observables across the full energy and k-point grid. |
|
Write transport observables and operators to files. |
|
Write lead self-energies to XML output files. |
|
Write conductor Green's functions to XML output files. |
|
Write transmission and k-resolved transmission data files. |
|
Write DOS and k-resolved DOS data files. |
Module Contents#
- PAOFLOW.transport.conductor_pipeline.initialize_conductor_outputs(*, data, dimC, dimL, dimR, ne, nkpts_par, nrtot_par)[source]#
Allocate transport output arrays for the conductor workflow.
- Parameters:
data (ConductorData) – Validated transport input and runtime flags.
dimC (int) – Conductor block dimension.
dimL (int) – Left lead block dimension.
dimR (int) – Right lead block dimension.
ne (int) – Number of energy points.
nkpts_par (int) – Number of k-points handled by this MPI rank.
nrtot_par (int) – Number of real-space vectors handled by this MPI rank.
- Returns:
Bundle of zero-initialized accumulators.
conducthas shape(1 + neigchn, ne)and dtypefloat64;doshas shape(ne,);conduct_khas shape(1 + neigchn, nkpts_par, ne);dos_khas shape(ne, nkpts_par).gf_out,rsgmL_out, andrsgmR_outarecomplex128arrays of shape(ne, nrtot_par, dimC, dimC)when enabled by flags, otherwiseNone.- Return type:
- PAOFLOW.transport.conductor_pipeline.compute_conductor_results(data, blc_blocks, *, comm=MPI.COMM_WORLD)[source]#
Compute transport observables across the full energy and k-point grid.
- Parameters:
data (ConductorData) – Validated transport input, runtime metadata, and output flags.
blc_blocks (Mapping[str, Any]) – Block-operator dictionary used to build self-energies and conductor Green’s functions at each
(E, k)point.comm (MPI.Comm, optional) – Communicator used for work distribution and reductions. Default is
MPI.COMM_WORLD.
- Returns:
Container with
transmission,dos,transmission_k,dos_k, optionalgreen_functions, optionalself_energy_L, optionalself_energy_R, andenergy_grid.- Return type:
Notes
This function:
Distributes energies across MPI ranks.
For each local energy, loops over local k-points.
Computes \(G_C^r\), \(\Sigma_L\), and \(\Sigma_R\).
Accumulates DOS and transmission observables.
Optionally transforms k-resolved operators into real-space output.
Reduces all arrays across MPI and returns
TransportResults.
- PAOFLOW.transport.conductor_pipeline.write_conductor_results(data, results, *, comm=MPI.COMM_WORLD)[source]#
Write transport observables and operators to files.
- Parameters:
data (ConductorData) – Validated transport input and output configuration.
results (TransportResults) – Container with transport observables from
compute_conductor_results.comm (MPI.Comm, optional) – Communicator for rank-aware file writing. Default is
MPI.COMM_WORLD.
Notes
Writes operator arrays (Green’s functions, lead self-energies) in real space if requested, and writes scalar/k-resolved transport observables.
- PAOFLOW.transport.conductor_pipeline.write_self_energy_results(data, results, *, comm=MPI.COMM_WORLD)[source]#
Write lead self-energies to XML output files.
- Parameters:
data (ConductorData) – Validated transport input and output configuration.
results (TransportResults) – Container with transport observables from
compute_conductor_results.comm (MPI.Comm, optional) – Communicator for rank-aware file writing. Default is
MPI.COMM_WORLD.
Notes
Writes
lead_L_sgm.xmlandlead_R_sgm.xmlunder the configured output directory. Non-root ranks perform no writes.
- PAOFLOW.transport.conductor_pipeline.write_greens_function_results(data, results, *, comm=MPI.COMM_WORLD)[source]#
Write conductor Green’s functions to XML output files.
- Parameters:
data (ConductorData) – Validated transport input and output configuration.
results (TransportResults) – Container with transport observables from
compute_conductor_results.comm (MPI.Comm, optional) – Communicator for rank-aware file writing. Default is
MPI.COMM_WORLD.
Notes
Writes
greenf.xmlunder the configured output directory. Non-root ranks perform no writes.
- PAOFLOW.transport.conductor_pipeline.write_transmission_results(data, results, *, comm=MPI.COMM_WORLD)[source]#
Write transmission and k-resolved transmission data files.
- Parameters:
data (ConductorData) – Validated transport input and output configuration.
results (TransportResults) – Container with transport observables from
compute_conductor_results.comm (MPI.Comm, optional) – Communicator for rank-aware file writing. Default is
MPI.COMM_WORLD.
Notes
Writes
conductance*.datunder the configured output directory. Whenwrite_kdatais enabled, also writes per-k-point conductance files. Non-root ranks perform no writes.
- PAOFLOW.transport.conductor_pipeline.write_dos_results(data, results, *, comm=MPI.COMM_WORLD)[source]#
Write DOS and k-resolved DOS data files.
- Parameters:
data (ConductorData) – Validated transport input and output configuration.
results (TransportResults) – Container with transport observables from
compute_conductor_results.comm (MPI.Comm, optional) – Communicator for rank-aware file writing. Default is
MPI.COMM_WORLD.
Notes
Writes
doscond*.datunder the configured output directory. Whenwrite_kdatais enabled, also writes per-k-point DOS files. Non-root ranks perform no writes.