|
6 | 6 | "slug": "harmonic-oscillator", |
7 | 7 | "file": "harmonic_oscillator.ipynb", |
8 | 8 | "title": "Harmonic Oscillator", |
9 | | - "description": "The equation of motion that defines the harmonic oscillator is given by", |
| 9 | + "description": "In this example we have a look at the damped harmonic oscillator. A linear dynamical system that models a spring-mass-damper system.", |
10 | 10 | "category": "getting-started", |
11 | 11 | "tags": [ |
12 | 12 | "ode", |
|
18 | 18 | "slug": "linear-feedback", |
19 | 19 | "file": "linear_feedback.ipynb", |
20 | 20 | "title": "Linear Feedback System", |
21 | | - "description": "Then lets define the system parameters such as the initial value of the integrator, the linear feedback gain and the time dependend source function .", |
| 21 | + "description": "Here's a simple example of a linear feedback system, simulated with PathSim.", |
22 | 22 | "category": "getting-started", |
23 | 23 | "tags": [ |
24 | 24 | "ode", |
|
30 | 30 | "slug": "pendulum", |
31 | 31 | "file": "pendulum.ipynb", |
32 | 32 | "title": "Pendulum", |
33 | | - "description": "Above we have both the mechanical mode, which is a weight dangling from a string with length and diverted by some initial angle, as well as the block diagram representation of the equation of moti...", |
| 33 | + "description": "In this example we have a look at the mathematical pendulum.", |
34 | 34 | "category": "getting-started", |
35 | 35 | "tags": [ |
36 | 36 | "ode", |
|
43 | 43 | "slug": "vanderpol", |
44 | 44 | "file": "vanderpol.ipynb", |
45 | 45 | "title": "Van der Pol", |
46 | | - "description": "$$", |
| 46 | + "description": "Here we cover a true classic from the world of dynamical systems. The Van der Pol system!", |
47 | 47 | "category": "getting-started", |
48 | 48 | "tags": [ |
49 | 49 | "ode", |
|
55 | 55 | "slug": "cascade-controller", |
56 | 56 | "file": "cascade_controller.ipynb", |
57 | 57 | "title": "Cascade Controller", |
58 | | - "description": "The cascade controller consists of:", |
| 58 | + "description": "In this example we demonstrate a cascade control architecture with a two-loop PID control system. Cascade control is widely used in process control when a fast inner loop can help improve the perfo...", |
59 | 59 | "category": "control", |
60 | 60 | "tags": [ |
61 | 61 | "cascade", |
|
67 | 67 | "slug": "pid-controller", |
68 | 68 | "file": "pid_controller.ipynb", |
69 | 69 | "title": "PID Controller", |
70 | | - "description": "First let's import the required classes and blocks:", |
| 70 | + "description": "This example demonstrates a PID (Proportional-Integral-Derivative) controller in PathSim, including automatic differentiation for sensitivity analysis. The system tracks a step-changing setpoint an...", |
71 | 71 | "category": "control", |
72 | 72 | "tags": [ |
73 | 73 | "pid", |
|
79 | 79 | "slug": "thermostat", |
80 | 80 | "file": "thermostat.ipynb", |
81 | 81 | "title": "Thermostat", |
82 | | - "description": "With some algebraic manipulations we can translate the system equation into a block diagram that can be implemented in PathSim. Note the event manager, that watches the state of the integrator and ...", |
| 82 | + "description": "In this example we have a look at a thermostat, which is a kind off discrete regulator. It switches a heating element on or of depending on defined upper and lower thresholds.", |
83 | 83 | "category": "control", |
84 | 84 | "tags": [ |
85 | 85 | "hybrid", |
|
91 | 91 | "slug": "bouncing-ball", |
92 | 92 | "file": "bouncing_ball.ipynb", |
93 | 93 | "title": "Bouncing Ball", |
94 | | - "description": "Systems like this require the location and resolution of discrete events within the timestep and are not easily solved with standard numerical ODE solvers. PathSim implements an event management sy...", |
| 94 | + "description": "This example demonstrates PathSim's event handling system. The classical example here is the bouncing ball. The ball accelerates downward due to gravity and once it hits the floor, it bounces back....", |
95 | 95 | "category": "mechanics", |
96 | 96 | "tags": [ |
97 | 97 | "events", |
|
103 | 103 | "slug": "bouncing-pendulum", |
104 | 104 | "file": "bouncing_pendulum.ipynb", |
105 | 105 | "title": "Bouncing Pendulum", |
106 | | - "description": "The mathematical pendulum is governed by the nonlinear differential equation:", |
| 106 | + "description": "This example demonstrates a hybrid system combining continuous pendulum dynamics with discrete bounce events. The pendulum swings until it hits the ground (zero angle), at which point it bounces ba...", |
107 | 107 | "category": "mechanics", |
108 | 108 | "tags": [ |
109 | 109 | "events", |
|
115 | 115 | "slug": "stick-slip", |
116 | 116 | "file": "stick_slip.ipynb", |
117 | 117 | "title": "Stick Slip", |
118 | | - "description": "This system has two possible states:", |
| 118 | + "description": "In this example we simulate a mechanical system that exhibits stick-slip behaviour, typical for coulomb friction. Lets consider the setup below, where we have a box sitting on a driven conveyor bel...", |
119 | 119 | "category": "mechanics", |
120 | 120 | "tags": [ |
121 | 121 | "friction", |
|
127 | 127 | "slug": "switched-bouncing-ball", |
128 | 128 | "file": "switched_bouncing_ball.ipynb", |
129 | 129 | "title": "Switched Bouncing Ball", |
130 | | - "description": "The ball experiences:", |
| 130 | + "description": "This example demonstrates advanced event handling with multiple simultaneous events, event switching, and conditional event logic. The bouncing ball bounces on a table first, and then drops to the ...", |
131 | 131 | "category": "mechanics", |
132 | 132 | "tags": [ |
133 | 133 | "events", |
|
139 | 139 | "slug": "delta-sigma-adc", |
140 | 140 | "file": "delta_sigma_adc.ipynb", |
141 | 141 | "title": "Delta-Sigma ADC", |
142 | | - "description": "A delta-sigma ADC works by:", |
| 142 | + "description": "You can also find this example as a single file in the GitHub repository.This example demonstrates a first-order delta-sigma (\u0394\u03a3) ADC, a popular architecture for high-resolution analog-to-digital c...", |
143 | 143 | "category": "electronics", |
144 | 144 | "tags": [ |
145 | 145 | "adc", |
|
151 | 151 | "slug": "diode-circuit", |
152 | 152 | "file": "diode_circuit.ipynb", |
153 | 153 | "title": "Diode Circuit", |
154 | | - "description": "Applying Kirchhoff's Voltage Law (KVL):", |
| 154 | + "description": "You can also find this example as a single file in the GitHub repository.This example demonstrates a more complex application of algebraic loop solving: a diode circuit with nonlinear characteristi...", |
155 | 155 | "category": "electronics", |
156 | 156 | "tags": [ |
157 | 157 | "nonlinear", |
|
163 | 163 | "slug": "sar-adc", |
164 | 164 | "file": "sar_adc.ipynb", |
165 | 165 | "title": "SAR ADC", |
166 | | - "description": "A SAR ADC converts analog signals to digital using a binary search algorithm:", |
| 166 | + "description": "You can also find this example as a single file in the GitHub repository.This advanced example demonstrates a SAR ADC (Successive Approximation Register Analog-to-Digital Converter), one of the mos...", |
167 | 167 | "category": "electronics", |
168 | 168 | "tags": [ |
169 | 169 | "adc", |
|
175 | 175 | "slug": "fmcw-radar", |
176 | 176 | "file": "fmcw_radar.ipynb", |
177 | 177 | "title": "FMCW Radar", |
178 | | - "description": "The figure below shows the block diagram of a very basic FMCW radar system consisting of a chirp source (sinusoid with a linearly time dependent frequency), a delay (to model the signal propagation...", |
| 178 | + "description": "In this example we simulate a simple frequency modulated continuous wave (FMCW) radar system.", |
179 | 179 | "category": "signal-processing", |
180 | 180 | "tags": [ |
181 | 181 | "radar", |
|
199 | 199 | "slug": "spectrum-analysis", |
200 | 200 | "file": "spectrum_analysis.ipynb", |
201 | 201 | "title": "Spectrum Analysis", |
202 | | - "description": "We'll create a simple signal chain:", |
| 202 | + "description": "In this example we demonstrate frequency domain analysis using PathSim's spectrum block. We'll examine the frequency response of a Butterworth lowpass filter by analyzing its response to a Gaussian...", |
203 | 203 | "category": "signal-processing", |
204 | 204 | "tags": [ |
205 | 205 | "fft", |
|
211 | 211 | "slug": "transfer-function", |
212 | 212 | "file": "transfer_function.ipynb", |
213 | 213 | "title": "Transfer Function", |
214 | | - "description": "The pole-residue-constant form represents a transfer function as:", |
| 214 | + "description": "In this example we demonstrate how to use transfer functions in PathSim using the Pole-Residue-Constant (PRC) form. This representation is particularly convenient for transfer functions with comple...", |
215 | 215 | "category": "signal-processing", |
216 | 216 | "tags": [ |
217 | 217 | "frequency", |
|
223 | 223 | "slug": "chemical-reactor", |
224 | 224 | "file": "chemical_reactor.ipynb", |
225 | 225 | "title": "Chemical Reactor", |
226 | | - "description": "We define the physical and chemical parameters for the reactor.", |
| 226 | + "description": "You can also find this example as a single file in the GitHub repository.This example demonstrates a Continuous Stirred Tank Reactor (CSTR) with consecutive exothermic reactions. This is a classic ...", |
227 | 227 | "category": "chemical", |
228 | 228 | "tags": [ |
229 | 229 | "cstr", |
|
235 | 235 | "slug": "algebraic-loop", |
236 | 236 | "file": "algebraic_loop.ipynb", |
237 | 237 | "title": "Algebraic Loop", |
238 | | - "description": "An algebraic loop occurs when the output of a block depends on its own input in the same timestep. This creates an implicit equation that must be solved:", |
| 238 | + "description": "You can also find this example as a single file in the GitHub repository.This example demonstrates PathSim's ability to handle algebraic loops - situations where a signal feeds back on itself insta...", |
239 | 239 | "category": "advanced", |
240 | 240 | "tags": [ |
241 | 241 | "algebraic", |
|
247 | 247 | "slug": "lorenz-attractor", |
248 | 248 | "file": "lorenz_attractor.ipynb", |
249 | 249 | "title": "Lorenz Attractor", |
250 | | - "description": "We create blocks for each equation:", |
| 250 | + "description": "You can also find this example as a single file in the GitHub repository.This example demonstrates the famous Lorenz attractor, a system of ordinary differential equations that exhibits chaotic beh...", |
251 | 251 | "category": "advanced", |
252 | 252 | "tags": [ |
253 | 253 | "chaos", |
|
259 | 259 | "slug": "nested-subsystems", |
260 | 260 | "file": "nested_subsystems.ipynb", |
261 | 261 | "title": "Nested Subsystems", |
262 | | - "description": "First, we create a subsystem that computes", |
| 262 | + "description": "You can also find this example as a single file in the GitHub repository.This example demonstrates PathSim's hierarchical modeling capabilities using nested subsystems. We'll build a complex Van de...", |
263 | 263 | "category": "advanced", |
264 | 264 | "tags": [ |
265 | 265 | "hierarchy", |
|
280 | 280 | "slug": "fmu-cosimulation", |
281 | 281 | "file": "fmu_cosimulation.ipynb", |
282 | 282 | "title": "FMU Co-Simulation", |
283 | | - "description": "Note that FMPy must be installed to use FMU blocks:", |
| 283 | + "description": "This example demonstrates how to integrate a Functional Mock-up Unit (FMU) as a PathSim block using the co-simulation interface. FMUs are standardized model exchange and co-simulation packages that...", |
284 | 284 | "category": "fmu", |
285 | 285 | "tags": [ |
286 | 286 | "fmu", |
|
0 commit comments