# MATLAB functions for structural operations

## Network operations

Name | Description |
---|---|

cannoise | Transforms a network to a canonical noise representation for a given set of measured nodes; |

immersion | Immerses a selected set of w-nodes in a network, including processing the properties: fixed, switching and delays; |

invariantmodules | Shows all modules that are invariant when only a given set of measured nodes are taken into account, and the remaining nodes are immersed; |

parpathlooptest | Tests whether for a given target module and a given set of measured nodes, the parallel path and loop condition is satisfied; |

## Identifiability related operations

Name | Description |
---|---|

modidfanalysis_fullm | Analyse the generic identifiability of a subset of modules in a dynamic network on the basis of full measurements of all nodes; |

modidfanalysis_partial | Analyse 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)). |

modidfsynthesis | Allocates 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. |

netwidfanalysis | Analysis whether a full network model set is generically identifiable; |

netwidfsynthesis | Determines locations of external excitation signals for full network generic identifiability; algorithm of X. Cheng et al. (TAC-2022). |

## Predictor model related operations

### Local direct method

Name | Description |
---|---|

datainformativity_analysis_dm | For 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 with the direct method. |

datainformativity_analysis_multistep | For 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 with the multi-step method. |

decomp_nodesforexcitation | Given the topology of a predictor model, it decomposes all node excitation signals u in three groups, dependent on their excitation properties for the predictor model; it either considers all node signals or only the node signals that actually have external excitation. |

delaycond_analysis_dm | For 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_dm | Tests whether a given predictor model satisfies the (structural) conditions for consistent estimation of a single module with the direct method. |

predmodel_analysis multistep | Tests whether a given predictor model satisfies the (structural) conditions for consistent estimation of a single module with the multistep method. |

predmodel_syn_dm_fullinput | A predictor model is constructed that satisfies the structural conditions for consistent identi cation 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. |

predmodel_syn_dm_mininput | Same function as the previous file, but now "the minimum input" algorithm is followed. |

predmodel_syn_dm_usersel | Same function as the previous file, but now the "userselection" algorithm is followed. |

predmodel_syn dm usersel2 | Same function as the previous file, but now with the predictor model construction method of Shengling Shi (IFAC, 2023). |

predmodel_syn dm | Command-line file for running any of the four algorithms listed previously. |

predmodel_syn multistep | Predictor model construction, but now with the predictor model construction method of the multi-step method (Fonken et al., CDC 2023). |

predmodel_addior | Adding the structural properties in terms of structured G, H and T to a predictor model for either the direct or the multistep method. |

## Technical tasks

Name | Description |
---|---|

confvariables | Determines which signals e act as confounding variable between two sets of w-nodes, for a given set of measured nodes, and specifies all corresponding confounding paths; |

delaycheck | For 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. |

existunmeasuredpath | Test whether there exists a direct or unmeasured path between two sets of nodes. |

mindismaxpath | Determines a minimum disconnecting set and a maximum number of vertex disjoint paths between two sets of nodes |

blockedpaths | Verify whether all paths between a single node and a set of nodes are blocked by a specified set of blocking nodes. |

unblockedpaths | Construct all paths between two specified single nodes that are not blocked by a specified set of blocking nodes. |