This function adds the graph characteristic A which is the cross sectional area of the edge.

calc_spring_area(g, value, minimum_value, range)

Arguments

g

an igraph object. The graph representing the network

value

a character string. The name of the edge attribute that is used as value from which Area will be calculated

minimum_value

a numeric value. Indicating the most thinnest edge

range

a numeric value. This gives the range of A values above the minimum.

Value

a igraph object with the new edge attribute "Area" for each edge

Details

This function is pretty niche but calculates a cross sectional area of an edge. This is useful when you wish to calculate the spring coefficient k using Young's modulus. The function coerces and edge characteristic to be within a certain range of values preventing negative/zero/infinite values.

Examples

#> #> Attaching package: ‘igraph’
#> The following objects are masked from ‘package:stats’: #> #> decompose, spectrum
#> The following object is masked from ‘package:base’: #> #> union
set.seed(234) g_prep <- generate_peels_network("A") %>% set.edge.attribute(., name = "edge_characteristic", value = rep(1:16, each = 10)) g <- calc_spring_area(g_prep, value = "edge_characteristic", minimum_value = 10, range = 20) get.edge.attribute(g, "Area")
#> [1] 10.00000 10.00000 10.00000 10.00000 10.00000 10.00000 10.00000 10.00000 #> [9] 10.00000 10.00000 11.33333 11.33333 11.33333 11.33333 11.33333 11.33333 #> [17] 11.33333 11.33333 11.33333 11.33333 12.66667 12.66667 12.66667 12.66667 #> [25] 12.66667 12.66667 12.66667 12.66667 12.66667 12.66667 14.00000 14.00000 #> [33] 14.00000 14.00000 14.00000 14.00000 14.00000 14.00000 14.00000 14.00000 #> [41] 15.33333 15.33333 15.33333 15.33333 15.33333 15.33333 15.33333 15.33333 #> [49] 15.33333 15.33333 16.66667 16.66667 16.66667 16.66667 16.66667 16.66667 #> [57] 16.66667 16.66667 16.66667 16.66667 18.00000 18.00000 18.00000 18.00000 #> [65] 18.00000 18.00000 18.00000 18.00000 18.00000 18.00000 19.33333 19.33333 #> [73] 19.33333 19.33333 19.33333 19.33333 19.33333 19.33333 19.33333 19.33333 #> [81] 20.66667 20.66667 20.66667 20.66667 20.66667 20.66667 20.66667 20.66667 #> [89] 20.66667 20.66667 22.00000 22.00000 22.00000 22.00000 22.00000 22.00000 #> [97] 22.00000 22.00000 22.00000 22.00000 23.33333 23.33333 23.33333 23.33333 #> [105] 23.33333 23.33333 23.33333 23.33333 23.33333 23.33333 24.66667 24.66667 #> [113] 24.66667 24.66667 24.66667 24.66667 24.66667 24.66667 24.66667 24.66667 #> [121] 26.00000 26.00000 26.00000 26.00000 26.00000 26.00000 26.00000 26.00000 #> [129] 26.00000 26.00000 27.33333 27.33333 27.33333 27.33333 27.33333 27.33333 #> [137] 27.33333 27.33333 27.33333 27.33333 28.66667 28.66667 28.66667 28.66667 #> [145] 28.66667 28.66667 28.66667 28.66667 28.66667 28.66667 30.00000 30.00000 #> [153] 30.00000 30.00000 30.00000 30.00000 30.00000 30.00000 30.00000 30.00000