A Python package for simulation algorithms
Project description
Python Simulation Package
Install
git submodule update --init --recursive
pip install maturin
pip install -r requirements.txt
maturin develop --release
How to use
import networkx as nx
import simulation
def random_graph_gen(n, p, k):
G: DiGraph = nx.fast_gnp_random_graph(n, p, directed=True)
for node in G.nodes:
G.nodes[node]['label'] = random.randint(1, k)
return G
def graph_permutation(g: DiGraph) -> DiGraph:
nodes = list(g.nodes)
random.shuffle(nodes)
mapping = dict(zip(g.nodes, nodes))
g_perm = nx.relabel_nodes(g, mapping)
return g_perm
def attr_same(attr1: dict, attr2: dict):
label1 = attr1.get("label")
label2 = attr2.get("label")
return label1 == label2
n, p = ...
g1 = random_graph_gen(n, p, directed=True)
g2 = graph_permutation(g1)
print(simulation.is_simulation_isomorphic_fn(g1, g2, attr_same))
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
simulation_alg-0.1.10.tar.gz
(19.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file simulation_alg-0.1.10.tar.gz.
File metadata
- Download URL: simulation_alg-0.1.10.tar.gz
- Upload date:
- Size: 19.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.8.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a63748589379161a10e8ad3c5305a1ceadb7eead45e85e2732a61c03574a3cc
|
|
| MD5 |
6b5aa9bb6386b1b143b03cbc1eb9c9b0
|
|
| BLAKE2b-256 |
86323857d8f317c6241c18049e504250ae3e0ebc82dc0f309457374e4ab18e4f
|
File details
Details for the file simulation_alg-0.1.10-cp312-cp312-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: simulation_alg-0.1.10-cp312-cp312-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 440.0 kB
- Tags: CPython 3.12, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.8.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7855e782ae63807ccd36e0f078e68629db5be1a5fe5f3e61cecba54cd4aff91a
|
|
| MD5 |
cecb4dc4722aa00d719a10ef32afb3a4
|
|
| BLAKE2b-256 |
c785242c3c1cc6855e031fbd50595d5ac05529a1d9e924b2d8bbac82bae71ae0
|