gridoxide 0.0.2

AC power flow and state estimation solver with a sparse Newton-Raphson core
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "gridoxide"
version = "0.0.2"
build = "build.rs"
exclude = [
    "tests/data/",
    "docs/book/",
    "scripts/bench/.case-cache/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "AC power flow and state estimation solver with a sparse Newton-Raphson core"
documentation = "https://m-mirz.github.io/gridoxide/"
readme = "README.md"
keywords = [
    "power-flow",
    "state-estimation",
    "newton-raphson",
    "sparse",
    "energy",
]
categories = [
    "science",
    "mathematics",
    "simulation",
]
license = "Apache-2.0 AND BSD-3-Clause AND LGPL-2.1-or-later"
repository = "https://github.com/m-mirz/gridoxide"

[features]
cgmes = [
    "dep:cimdecoder",
    "dep:cimstructs",
]
default = []
klu = [
    "dep:cc",
    "dep:bindgen",
]
klu-dynamic = ["klu"]
pardiso = ["dep:bindgen"]
python = ["dep:pyo3"]

[lib]
name = "gridoxide"
crate-type = [
    "cdylib",
    "rlib",
]
path = "src/lib.rs"

[[bin]]
name = "gridoxide"
path = "src/main.rs"

[[example]]
name = "bde_check"
path = "examples/bde_check.rs"

[[example]]
name = "bench_network"
path = "examples/bench_network.rs"

[[example]]
name = "bench_se"
path = "examples/bench_se.rs"

[[example]]
name = "cgmes_microgrid_be_dump"
path = "examples/cgmes_microgrid_be_dump.rs"
required-features = ["cgmes"]

[[example]]
name = "se_converge"
path = "examples/se_converge.rs"

[[example]]
name = "se_profile"
path = "examples/se_profile.rs"

[[test]]
name = "batch_solver_test"
path = "tests/batch_solver_test.rs"

[[test]]
name = "bde_test"
path = "tests/bde_test.rs"

[[test]]
name = "block_jacobian_test"
path = "tests/block_jacobian_test.rs"

[[test]]
name = "branch_flow_test"
path = "tests/branch_flow_test.rs"

[[test]]
name = "cgmes_microgrid_be_test"
path = "tests/cgmes_microgrid_be_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_microgrid_hvdc_test"
path = "tests/cgmes_microgrid_hvdc_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_microgrid_nl_test"
path = "tests/cgmes_microgrid_nl_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_microgrid_type1_test"
path = "tests/cgmes_microgrid_type1_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_microgrid_type2_test"
path = "tests/cgmes_microgrid_type2_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_microgrid_type3_test"
path = "tests/cgmes_microgrid_type3_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_minigrid_test"
path = "tests/cgmes_minigrid_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_powerflow_test"
path = "tests/cgmes_powerflow_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_pst_phase_tap_changer_linear_test"
path = "tests/cgmes_pst_phase_tap_changer_linear_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_pst_phase_tap_changer_table_test"
path = "tests/cgmes_pst_phase_tap_changer_table_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_realgrid_test"
path = "tests/cgmes_realgrid_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_smallgrid_test"
path = "tests/cgmes_smallgrid_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_smoke_test"
path = "tests/cgmes_smoke_test.rs"
required-features = ["cgmes"]

[[test]]
name = "cgmes_svedala_test"
path = "tests/cgmes_svedala_test.rs"
required-features = ["cgmes"]

[[test]]
name = "klu_jacobian_test"
path = "tests/klu_jacobian_test.rs"
required-features = ["klu"]

[[test]]
name = "klu_native_jacobian_test"
path = "tests/klu_native_jacobian_test.rs"

[[test]]
name = "link_test"
path = "tests/link_test.rs"

[[test]]
name = "measurement_residual_test"
path = "tests/measurement_residual_test.rs"

[[test]]
name = "multi_island_test"
path = "tests/multi_island_test.rs"

[[test]]
name = "pardiso_jacobian_test"
path = "tests/pardiso_jacobian_test.rs"
required-features = ["pardiso"]

[[test]]
name = "persistent_solver_test"
path = "tests/persistent_solver_test.rs"

[[test]]
name = "pgm_asym_line_test"
path = "tests/pgm_asym_line_test.rs"

[[test]]
name = "pgm_asym_transformer_test"
path = "tests/pgm_asym_transformer_test.rs"

[[test]]
name = "pgm_component_coverage_test"
path = "tests/pgm_component_coverage_test.rs"

[[test]]
name = "pgm_gen_test"
path = "tests/pgm_gen_test.rs"

[[test]]
name = "pgm_line_test"
path = "tests/pgm_line_test.rs"

[[test]]
name = "pgm_load_test"
path = "tests/pgm_load_test.rs"

[[test]]
name = "pgm_network_test"
path = "tests/pgm_network_test.rs"

[[test]]
name = "pgm_node_test"
path = "tests/pgm_node_test.rs"

[[test]]
name = "pgm_shunt_test"
path = "tests/pgm_shunt_test.rs"

[[test]]
name = "pgm_source_test"
path = "tests/pgm_source_test.rs"

[[test]]
name = "pgm_three_winding_transformer_test"
path = "tests/pgm_three_winding_transformer_test.rs"

[[test]]
name = "pgm_transformer_test"
path = "tests/pgm_transformer_test.rs"

[[test]]
name = "powerflow_test"
path = "tests/powerflow_test.rs"

[[test]]
name = "q_limits_test"
path = "tests/q_limits_test.rs"

[[test]]
name = "se_batch_test"
path = "tests/se_batch_test.rs"

[[test]]
name = "se_three_phase_test"
path = "tests/se_three_phase_test.rs"

[[test]]
name = "state_estimation_test"
path = "tests/state_estimation_test.rs"

[dependencies.cimdecoder]
version = "0.3.0"
optional = true
package = "cimoxide-decoder"

[dependencies.cimstructs]
version = "0.3.0"
optional = true
package = "cimoxide-structs"

[dependencies.faer]
version = "0.24.4"

[dependencies.num-complex]
version = "0.4.6"
features = ["serde"]

[dependencies.pyo3]
version = "0.29.0"
features = ["extension-module"]
optional = true

[dependencies.rayon]
version = "1.12"

[dependencies.serde]
version = "1.0"
features = ["derive"]

[dependencies.serde_json]
version = "1.0"

[build-dependencies.bindgen]
version = "0.72"
optional = true

[build-dependencies.cc]
version = "1.0"
optional = true