Julia 1.8 and higher.
pkg> add FaultDetectionTools
pkg> test FaultDetectionTools
To execute all examples in Chapters 5, 6 and 7, and all case studies in Chapter 8 in the fault diagnosis book (see below), execute
using FaultDetectionTools
cd(joinpath(pkgdir(FaultDetectionTools), "Examples"))
include("runexamples.jl")
include("runcasestudies.jl")
To execute a particular example, say Example 5.4 and its compact variant 5.4c, execute
using FaultDetectionTools
cd(joinpath(pkgdir(FaultDetectionTools), "Examples"))
include("Ex5_4.jl")
include("Ex5_4c.jl")
To execute a particular case study, say Case Study 2.1, execute
using FaultDetectionTools
cd(joinpath(pkgdir(FaultDetectionTools), "Examples"))
include("CS2_1.jl")
Note: For the execution of the test examples and case study examples, the packages Polynomials, Measurements, GenericLinearAlgebra, Makie, CairoMakie, LaTeXStrings, JLD2 and Optim are also required and must be additionally installed.
FaultDetectionTools
is a collection of Julia functions for the analysis and solution
of fault detection and model detection problems. The functions of this collection rely on
the DescriptorSystems package.
The implemented functions are based on the computational procedures described in Chapters 5, 6 and 7 of the book:
Andreas Varga, Solving Fault Diagnosis Problems - Linear Synthesis Techniques with Julia Code Examples, vol. 482 of Studies in Systems, Decision and Control, Springer International Publishing, 2024.
This book describes the mathematical background of solving synthesis problems of fault detection and model detection filters and gives detailed descriptions of the underlying synthesis procedures.
The implemented functionality parallels the functionality of the MATLAB collection of tools FDITOOLS, whose User's Guide of the version V1.0 is provided in the file fditoolsdoc.pdf
.
Supplementary information on the targeted functionality is also available on arXiv in the documentation of the companion MATLAB FDITOOLS
collection.