Numerical network characteristics

Lineament & fracture networks can be characterized with numerous geometric and topological parameters.

Initializing

Create two Networks so that their numerical attributes can be compared.

from pprint import pprint

import matplotlib.pyplot as plt

# Load kb11_network network from examples/example_data.py
from example_data import KB7_NETWORK, KB11_NETWORK

# Import Network class from fractopo
from fractopo.analysis.parameters import plot_parameters_plot

Geometric and topological Network parameters

All parameters are accessible through an attribute

kb11_parameters = KB11_NETWORK.parameters
kb7_parameters = KB7_NETWORK.parameters
pprint(kb11_parameters)
{'Area': 1237.9003657531266,
 'Areal Frequency B20': 1.627756203766927,
 'Areal Frequency P20': 0.5258904658323919,
 'Branch Max Length': 5.721558550556387,
 'Branch Mean Length': 0.7761437911315212,
 'Branch Min Length': 0.006639501944314653,
 'Connection Frequency': 0.8837544848243267,
 'Connections per Branch': 1.7627791563275435,
 'Connections per Trace': 3.3609831029185866,
 'Dimensionless Intensity B22': 0.9805590097335628,
 'Dimensionless Intensity P22': 2.786779132035443,
 'Fracture Density (Mauldon)': nan,
 'Fracture Intensity (Mauldon)': nan,
 'Fracture Intensity B21': 1.2633728710295158,
 'Fracture Intensity P21': 1.2633728710295158,
 'Number of Branches': 2015.0,
 'Number of Branches (Real)': 2072,
 'Number of Traces': 651.0,
 'Number of Traces (Real)': 709,
 'Trace Max Length': 33.1085306416674,
 'Trace Mean Length': 2.2058247378420526,
 'Trace Mean Length (Mauldon)': nan,
 'Trace Min Length': 5.820766091346741e-10}
pprint(kb7_parameters)
{'Area': 534.6848339727045,
 'Areal Frequency B20': 0.7209854768756723,
 'Areal Frequency P20': 0.37685751904136955,
 'Branch Max Length': 11.141338433454226,
 'Branch Mean Length': 1.1849926370920998,
 'Branch Min Length': 0.002572582127554804,
 'Connection Frequency': 0.26183648965653467,
 'Connections per Branch': 1.2036316472114137,
 'Connections per Trace': 1.3895781637717122,
 'Dimensionless Intensity B22': 1.0124132500421243,
 'Dimensionless Intensity P22': 1.6261887828801624,
 'Fracture Density (Mauldon)': nan,
 'Fracture Intensity (Mauldon)': nan,
 'Fracture Intensity B21': 0.854362481548008,
 'Fracture Intensity P21': 0.854362481548008,
 'Number of Branches': 385.5,
 'Number of Branches (Real)': 423,
 'Number of Traces': 201.5,
 'Number of Traces (Real)': 240,
 'Trace Max Length': 11.943520313323264,
 'Trace Mean Length': 1.9033944233291853,
 'Trace Mean Length (Mauldon)': nan,
 'Trace Min Length': 0.06136251196974645}

Compare KB11 and KB7 Networks selected parameter values

b22 = "Dimensionless Intensity B22"
cpb = "Connections per Branch"
selected = {b22, cpb}

# Filter to only selected parameters
kb11_network_selected_params = {
    param: value for param, value in kb11_parameters.items() if param in selected
}
kb7_network_selected_params = {
    param: value for param, value in kb7_parameters.items() if param in selected
}

# Compare parameters with a simple bar plot
figs, axes = plot_parameters_plot(
    topology_parameters_list=[
        kb11_network_selected_params,
        kb7_network_selected_params,
    ],
    labels=["KB11", "KB7"],
    colors=["red", "blue"],
)
plt.show()
  • Connections per Branch
  • Dimensionless Intensity B22

Total running time of the script: (0 minutes 0.171 seconds)

Gallery generated by Sphinx-Gallery