Closed krivit closed 1 year ago
Subnet cache is a critical optimisation, but currently uncombining networks loses the new edge values.
library(ergm.multi) data(samplk) ### Without subnet cache samplks <- combine_networks(list(samplk1, samplk2, samplk3)) # Old value summary(samplks~edges) #> edges #> 168 # Simulate sim <- simulate(samplks~edges, coef=-2, constraints=~blockdiag(".NetworkID")) # New number of edges summary(sim~edges) #> edges #> 126 # Ditto sum(summary(uncombine_network(sim)~edges)) #> [1] 126 ### With subnet cache samplks <- combine_networks(list(samplk1, samplk2, samplk3), subnet.cache=TRUE) # Old value summary(samplks~edges) #> edges #> 168 # Simulate sim <- simulate(samplks~edges, coef=-2, constraints=~blockdiag(".NetworkID")) # New number of edges summary(sim~edges) #> edges #> 115 # Still old number of edges sum(summary(uncombine_network(sim)~edges)) #> [1] 168
Created on 2022-11-22 with reprex v2.0.2
This is related to statnet/ergm.multi-private#2.
Subnet cache is a critical optimisation, but currently uncombining networks loses the new edge values.
Created on 2022-11-22 with reprex v2.0.2