Skip to content

Commit

Permalink
✨ QuickTrace: An Efficient Contour Tracing Algorithm for Defect Robus…
Browse files Browse the repository at this point in the history
…tness Simulation (#546)

* 💚 small changes to test.

* 💚 small changes to test.

* 💚 small changes to test.

* 🎨 rename function.

* 🎨 Incorporated pre-commit fixes

* 🎨 missing renaming in experiment.

* 💚 fix windows build issue.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 fix docu issue.

* 🎨 Incorporated pre-commit fixes

* 🎨 update code after merge.

* 🎨 Incorporated pre-commit fixes

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 update code after merge.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 fix docu.

* 🎨 Incorporated pre-commit fixes

* 🎨 update the experiment script.

* 🎨 Incorporated pre-commit fixes

* 🎨 small fix.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small fix.

* 🎨 Incorporated pre-commit fixes

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🔀 merge.

* 🎨 Incorporated pre-commit fixes

* 🔀 merge.

* 🙈 update gitignore file.

* 🚸 add experiment to compare different methods to determine the defect avoidance distance.

* 🎨 update code.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 add comments.

* 🎨 small fix.

* 🎨 delete superfluous header file

* 🎨 small changes

* 🎨 small changes.

* 🎨 experiments.

* 🎨 several changes.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small changes.

* 🎨 revert changes.

* 🎨 Incorporated pre-commit fixes

* 🔥 delete files.

* 🎨 Make sure the contour does not get stuck if you have only one contour.

* 🎨 Incorporated pre-commit fixes

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small fixes.

* 🎨 Incorporated pre-commit fixes

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🚚 add Bestagon gate library with logic cell type.

* 🐛 make sure logic cell type is handled correctly.

* 🔥 delete files again and put them to separate PR.

* 🎨 Incorporated pre-commit fixes

* 🎨 use switch.

* 🎨 use switch

* 🐍 fix python bindings.

* 🎨 Incorporated pre-commit fixes

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small fix.

* 🎨 Incorporated pre-commit fixes

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small change.

* 🎨 small fix.

* 🎨 clang-tidy fix.

* 🎨 Incorporated pre-commit fixes

* 🎨 small fix.

* 🎨 small fix.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small fix.

* 🎨 Incorporated pre-commit fixes

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small fix.

* 🎨 print output to fix CI.

* 🎨 print output to fix CI.

* 🎨 integrate Marcel's comment.

* 🎨 small fix in docu.

* 🎨 rename files.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small clang-tidy fixes.

* 🎨 Incorporated pre-commit fixes

* 🎨 use one thread to see if that fixes python unit tests in CI.

* 🎨 try to fix docu.

* ✨ add function to save defect operational domain.

* 🧵 replace `future` by `thread` to avoid python 3.13 issues

* 🎨 Incorporated pre-commit fixes

* 🧵 small fix.

* 🧵 small fix.

* 🧵 use one thread to test CI issues.

* 🧵 use different implementation.

* 🎨 Incorporated pre-commit fixes

* 📝 small fix.

* 📝 small fix.

* 🎨 small fix.

* 🎨 small fix.

* 🎨 revert changes to understand issue.

* 🎨 small fix.

* 🎨 Incorporated pre-commit fixes

* ⬆️ use python 3.13 for readthedocs

* ⬆️ use python 3.13 for readthedocs

* ⬆️ use python 3.13 for readthedocs

* ⬆️ use python 3.8 for readthedocs

* 💚 use string.

* 🎨 restructure.

* 🎨 Incorporated pre-commit fixes

* ⬆️ use python 3.10 again for readthedocs.

* ⚗️ small fix.

* ⚗️ small fix.

* 📝 deactivate `exact` to try to solve documentation issue

* 📝 try to fix docu issue.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 include missing header file.

* 📝 small update.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* ✅ update tests.

* 🎨 Incorporated pre-commit fixes

* 🎨 use static_cast to use correct type.

* 🎨 static-cast to avoid tpye error.

* 🎨 Incorporated pre-commit fixes

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small fix.

* 📝 small fix.

* ✅ small fix.

* 🎨 Incorporated pre-commit fixes

* 📝 small fix.

* 📝 revert changes in the workflow.

* 📝 try to fix docu.

* 🎨 Incorporated pre-commit fixes

* 🎨 Incorporated pre-commit fixes

* 🔥 remove python bindings for the moment due to doc issue.

* 🔥 remove python bindings for the moment due to doc issue.

* 🎨 small fix.

* 🎨 Incorporated pre-commit fixes

* 🐍 small fix.

* 🐍 small fix.

* 🎨 Several cleanup changes.

* 🎨 Incorporated pre-commit fixes

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 revert changes.

* 🎨 revert changes.

* 🎨 revert changes.

* 🎨 small fix.

* 🎨 small fix.

* 🎨 small fix.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🐍 small fix.

* 🐍 small fix.

* 📝 small update.

* 📝 small update.

* 📝 small update.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 small updates.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 small update.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 small update.

* 🎨 integrate first batch of Marcel's comments.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 fix docu.

* 🎨 significant restructuring.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 renaming.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 small update.

* 📝 small update.

* 🐍 small update.

* ⚗️ update the experiments.

* ⚗️ update the experiments.

* 🎨 fix several issues.

* ✅ cover a symmetric case.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 small fix.

* ✅ add a symmetric case.

* ✅ small fix.

* 🎨 update docu.

* 🎨 increase consistency.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 increase consistency.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 small fix.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 🎨 remove discard statement.

* 🎨 implement Marcel's feedback.

* 📝 Update pyfiction docstrings

Signed-off-by: GitHub Actions <actions@github.com>

* 📝 update todos.

* 📝 small fix.

* 📝 small fix.

* 📝 small fixes.

* 🐍 small fix.

* ✅ small fix.

* 🎨 remove unused header.

---------

Signed-off-by: GitHub Actions <actions@github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: GitHub Actions <actions@github.com>
Co-authored-by: Marcel Walter <marcel.walter@tum.de>
4 people authored Jan 13, 2025
1 parent 96ab05d commit 9ff9b53
Showing 84 changed files with 4,079 additions and 1,547 deletions.
36 changes: 20 additions & 16 deletions bindings/mnt/pyfiction/__init__.py
Original file line number Diff line number Diff line change
@@ -36,8 +36,6 @@
apply_topolinano_library,
# Technology
area,
assess_physical_population_stability,
assess_physical_population_stability_params,
automatic_base_number_detection,
bdl_input_iterator_100,
bdl_input_iterator_111,
@@ -69,10 +67,7 @@
color_mode,
color_routing,
color_routing_params,
compute_operational_ratio,
compute_operational_ratio_params,
convert_layout_to_siqad_coordinates,
convert_potential_to_distance,
create_and3_tt,
create_and_tt,
create_and_xor_tt,
@@ -120,8 +115,6 @@
detect_bdl_wires_params,
determine_displacement_robustness_domain_100,
determine_displacement_robustness_domain_111,
determine_groundstate_from_simulation_results,
determine_physically_valid_parameters,
dimer_displacement_policy,
displacement_analysis_mode,
displacement_robustness_domain_100,
@@ -162,6 +155,7 @@
graph_oriented_layout_design,
graph_oriented_layout_design_params,
graph_oriented_layout_design_stats,
groundstate_from_simulation_result,
has_high_degree_fanin_nodes,
hexagonal_gate_layout,
hexagonal_layout,
@@ -207,6 +201,8 @@
operational_domain_grid_search,
operational_domain_params,
operational_domain_random_sampling,
operational_domain_ratio,
operational_domain_ratio_params,
operational_domain_stats,
operational_domain_value_range,
operational_input_patterns,
@@ -216,13 +212,19 @@
orthogonal_stats,
out_of_cell_names_exception,
parameter_point,
physical_population_stability_100,
physical_population_stability_111,
physical_population_stability_params,
physically_valid_parameters,
physically_valid_parameters_domain,
place,
population_stability_information,
population_stability_information_100,
population_stability_information_111,
positive_charges,
post_layout_optimization,
post_layout_optimization_params,
post_layout_optimization_stats,
potential_to_distance_conversion,
qca_layout,
qca_technology,
quickexact,
@@ -336,8 +338,6 @@
"apply_topolinano_library",
# Technology
"area",
"assess_physical_population_stability",
"assess_physical_population_stability_params",
"automatic_base_number_detection",
"bdl_input_iterator_100",
"bdl_input_iterator_111",
@@ -369,10 +369,7 @@
"color_mode",
"color_routing",
"color_routing_params",
"compute_operational_ratio",
"compute_operational_ratio_params",
"convert_layout_to_siqad_coordinates",
"convert_potential_to_distance",
"create_and3_tt",
"create_and_tt",
"create_and_xor_tt",
@@ -420,8 +417,6 @@
"detect_bdl_wires_params",
"determine_displacement_robustness_domain_100",
"determine_displacement_robustness_domain_111",
"determine_groundstate_from_simulation_results",
"determine_physically_valid_parameters",
"dimer_displacement_policy",
"displacement_analysis_mode",
"displacement_robustness_domain_100",
@@ -462,6 +457,7 @@
"graph_oriented_layout_design",
"graph_oriented_layout_design_params",
"graph_oriented_layout_design_stats",
"groundstate_from_simulation_result",
"has_high_degree_fanin_nodes",
"hexagonal_gate_layout",
"hexagonal_layout",
@@ -507,6 +503,8 @@
"operational_domain_grid_search",
"operational_domain_params",
"operational_domain_random_sampling",
"operational_domain_ratio",
"operational_domain_ratio_params",
"operational_domain_stats",
"operational_domain_value_range",
"operational_input_patterns",
@@ -516,13 +514,19 @@
"orthogonal_stats",
"out_of_cell_names_exception",
"parameter_point",
"physical_population_stability_100",
"physical_population_stability_111",
"physical_population_stability_params",
"physically_valid_parameters",
"physically_valid_parameters_domain",
"place",
"population_stability_information",
"population_stability_information_100",
"population_stability_information_111",
"positive_charges",
"post_layout_optimization",
"post_layout_optimization_params",
"post_layout_optimization_stats",
"potential_to_distance_conversion",
"qca_layout",
"qca_technology",
"quickexact",

This file was deleted.

Original file line number Diff line number Diff line change
@@ -2,8 +2,8 @@
// Created by marcel on 21.11.23.
//

#ifndef PYFICTION_CAN_POSITIVE_CHARGES_OCCUR_HPP
#define PYFICTION_CAN_POSITIVE_CHARGES_OCCUR_HPP
#ifndef PYFICTION_CAN_POSITIVE_CHARGE_OCCUR_HPP
#define PYFICTION_CAN_POSITIVE_CHARGE_OCCUR_HPP

#include "pyfiction/documentation.hpp"
#include "pyfiction/types.hpp"
@@ -13,8 +13,6 @@
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>

#include <string>

namespace pyfiction
{

@@ -42,4 +40,4 @@ inline void can_positive_charges_occur(pybind11::module& m)

} // namespace pyfiction

#endif // PYFICTION_CAN_POSITIVE_CHARGES_OCCUR_HPP
#endif // PYFICTION_CAN_POSITIVE_CHARGE_OCCUR_HPP
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@
#include "pyfiction/documentation.hpp"
#include "pyfiction/types.hpp"

#include <fiction/algorithms/simulation/sidb/check_simulation_results_for_equivalence.hpp>
#include <fiction/algorithms/simulation/sidb/equivalence_check_for_simulation_results.hpp>

#include <pybind11/pybind11.h>
#include <pybind11/stl.h>

This file was deleted.

Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@
#include "pyfiction/documentation.hpp"
#include "pyfiction/types.hpp"

#include <fiction/algorithms/simulation/sidb/maximum_defect_influence_position_and_distance.hpp>
#include <fiction/algorithms/simulation/sidb/defect_influence.hpp>

#include <pybind11/pybind11.h>
#include <pybind11/stl.h>
Original file line number Diff line number Diff line change
@@ -38,7 +38,6 @@ void detect_bdl_pairs(pybind11::module& m)
inline void detect_bdl_pairs(pybind11::module& m)
{
namespace py = pybind11;
namespace py = pybind11;

py::class_<fiction::bdl_pair<fiction::offset::ucoord_t>>(m, "bdl_pair", DOC(fiction_bdl_pair))
.def(py::init<>(), DOC(fiction_bdl_pair_bdl_pair))
Original file line number Diff line number Diff line change
@@ -24,7 +24,6 @@ template <typename Lyt>
void detect_bdl_wires(pybind11::module& m, const std::string& lattice)
{
namespace py = pybind11;
namespace py = pybind11;

using bdl_wire_t = fiction::bdl_wire<Lyt>;

@@ -52,7 +51,6 @@ void detect_bdl_wires(pybind11::module& m, const std::string& lattice)
inline void detect_bdl_wires(pybind11::module& m)
{
namespace py = pybind11;
namespace py = pybind11;

// Enum for wire selection options
py::enum_<fiction::bdl_wire_selection>(m, "bdl_wire_selection", DOC(fiction_bdl_wire_selection))

This file was deleted.

Loading

0 comments on commit 9ff9b53

Please sign in to comment.