Skip to main content

MATLAB functions

Network operations

Module framework

NameDescription
algebrloopsEvaluates the presence of algebraic loops in a network topology;
cannoiseTransforms a network to a canonical noise representation for a given set of measured nodes;
confvariablesDetermines which signals ee act as confounding variable between two sets of ww-nodes, for a given set of measured nodes, and specifies all corresponding confounding paths;
disconset4pplDetermines a disconnecting set for satisfying the PPL condition for a particular target module;
immersionImmerses a selected set of w-nodes in a network, including processing the properties: fixed, switching and delays;
invariantmodulesShows all modules that are invariant when only a given set of measured nodes are taken into account, and the remaining nodes are immersed;
parpathlooptestTests whether for a given target module and a given set of measured nodes, the parallel path and loop condition is satisfied;

DCN framework

NameDescription
immersion_dcnImmerses a selected set of w-nodes in a DCN network, including processing the properties: fixed, switching and delays;
invariantmodules_dcnShows all links in a DCN network that are invariant when only a given set of measured nodes are taken into account, and the remaining nodes are immersed;
parpathlooptest_dcnTests whether for a given target subnetwork and a given set of measured nodes, the parallel path and loop condition is satisfied;

Module framework

NameDescription
modidfanalysis_fullmAnalyse the generic identifiability of a subset of modules in a dynamic network on the basis of full measurements of all nodes;
modidfanalysis_partialAnalyse the generic identifiability of a subset of modules in a dynamic network on the basis of a preselected set of measured nodes; R modules are assumed to be fixed. The test is based on a sufficient condition (Proposition 2 in Shi et al. (TAC-2023)).
modidfsynthesisAllocates sensors and actuators such that the selected target modules become generically identifiable, where the inputs and outputs of the target modules will be measured; The allocated actuator dynamics are all known/fixed.
netwidfanalysisAnalysis whether a full network model set is generically identifiable;
netwidfsynthesisDetermines locations of external excitation signals for full network generic identifiability; algorithm of X. Cheng et al. (TAC-2022) in its extended form for dealing with fixed modules as published in M. Dreef et al. (L-CSS 2022).

DCN framework

NameDescription
modidfanalysis_dcnAnalyse the generic identifiability of a set of links in a DCN dynamic network model set;
modidfsynthesis_dcnAllocates sensors and actuators such that a set of links in a DCN network becomes generically identifiable.
netwidfanalysis_dcnAnalysis whether a full DCN network model set is generically identifiable;
netwidfsynthesis_dcnAllocates sensors and actuators for full DCN network generic identifiability.
subnetwidfanalysis_dcnAnalyse the generic identifiability of a subnetwork of a DCN dynamic network model set;
subnetwidfsynthesis_dcnAllocates sensors and actuators such that the selected subnetwork becomes generically identifiable.
NameDescription
construct_TuGiven the structural properties (input and output nodes) of a predictor model, the matrix T(q)T(q) is constructed, representing the mapping from external excitation signals u to predictor outputs.
datainform_analysisFor a given dynamic network topology, a target module and predictor model, it is tested whether it satisfies the generic data-informativity conditions of the target module for any of the identification methods.
datainform_analysis_dm_fullpmFor a given dynamic network topology, a target module and predictor model, it is tested whether it satisfies the generic data-informativity conditions of the full predictor model for the local direct method;
datainform_analysis_multistep_fullpmFor a given dynamic network topology, a target module and predictor model, it is tested whether it satisfies the generic data-informativity conditions of the full predictor model for the multistep method;
delaycond_analysis_dmFor a given dynamic network topology, a predictor model is tested whether it satisfies the delay conditions for consistent identification of a target module with the direct method.
predmodel_analysis_dmTests whether a given predictor model satisfies the (structural) conditions for consistent estimation of a single module with the direct method.
predmodel_analysis_multistepTests whether a given predictor model satisfies the (structural) conditions for consistent estimation of a single module with the multistep method.
predmodel_analysis_indirectTests whether a given predictor model satisfies the (structural) conditions for consistent estimation of a single module with the indirect method.
predmodel_syn_dm_fullinputA predictor model is constructed that satisfies the structural conditions for consistent identification of a target module with the direct method. The structural conditions concern the parallel path and loop condition, and the absence of confounding variables. As option also the structural data-informativity conditions can be included. The ”fullinput” algorithm is followed to arrive at the choice of predictor model inputs and outputs. See Ramaswamy and Van den Hof (IEEE-TAC, 2021)
predmodel_syn_dm_mininputSame function as the previous file, but now "the minimum input" algorithm is followed.
predmodel_syn_dm_userselSame function as the previous file, but now the "userselection" algorithm is followed.
predmodel_syn_dm_usersel2Same function as the previous file, but now with the predictor model construction method of Shengling Shi (IFAC, 2023).
predmodel_syn_dmCommand-line file for running any of the four algorithms listed previously.
predmodel_syn multistepPredictor model construction, but now with the predictor model construction method of the multi-step method (Fonken et al., CDC 2023).
predmodel_syn_indirect_fullmPredictor model construction for the indirect method, full measurement case.
predmodel_addrAdding the r-dependent input to a predictor model determined by predictor model inputs and outputs.
predmodel_addiorAdding the structural properties in terms of structured G, H and T to a predictor model for either the direct, multistep or indirect method, and deliver a predictor model in nwpredmodel class format.

Identification of directed / module networks

NameDescription
nwidfullSLSFull network identification through a sequential Least-Squares (SLS) algorithm applied to an ARMAX mdel structure;
nwidPEMIdentification of a single module / full network through a (local) direct method;
nwidsingleMultiStepIdentification of a single module through a multi-step method;

Identification of undirected / diffusively coupled networks

NameDescription
nwidARMAX_dcnMulti-step time-domain method for discrete-time DCN identfication;
nwidFreq_dcnMulti-step frequency-domain method for discrete-time and continuous-time DCN identification;

Topology estimation (directed networks)

NameDescription
nwtopestBayesTopology estimation with a Bayesian method;
nwtopevalBayesEvaluation of an estimated topology with the Bayesian method;

Simulation

NameDescription
nwsimulateSimulation of a directed / module or an undirected / DCN network;

Network conversions

NameDescription
slx2adjConvert a Simulink file (.slx) to an adjacency matrix;

Technical tasks

NameDescription
blockedpathsVerify whether all paths between a single node and a set of nodes are blocked by a specified set of blocking nodes.
confseqeunceDetermines whether there exists a sequence of linked confounders between two nodes in a network.
delaycheckFor a given dynamic network topology and the delay properties of each module in G, it is verified whether all paths from nodes in one set to the nodes in another set have at least a delay. This file works with negative delays also.
disconset_analysisVerfy whether a given set is a disconnecting set between two specified node sets.
EsourcesForExcitationDetermine which ee-nodes can be used as sources for exciting inputs in a predictor model.
existunmeasuredpathTest whether there exists a direct or unmeasured path between two sets of nodes.
mindismaxpathDetermines a minimum disconnecting set and a maximum number of vertex disjoint paths between two sets of nodes;
nodeselectFor a set of vectors of node numbers, a (minimal) selection of nodes is chosen such that for each vector at least one member is included. The algorithm can either provide a (nonunique) solution or provide options for the user to choose from.
numberofinstrumentsFinds the number of independent instrumentations for a given excitation and measurement setup.
predmodel_separateABFor the (ww-) inputs and outputs of a predictor model, separate the inputs in sets AA and BB, according to the confounding variable condition for consistent estimation (direct method);
unblockedpathsConstruct all paths between two specified single nodes that are not blocked by a specified set of blocking nodes.
unmeasuredpathFinds a direct or unmeasured path between each pair of nodes in two node sets;