Lemonergy · Studio block

Sampled rate limiter

Limits how quickly each sampled output can rise or fall.

Implementation ID
native-sampled-rate-limiter
Reviewed
2026-10-27

Behavior

y[k] = y[k−1] + clamp(u[k]−y[k−1], −fall_rate Δt, rise_rate Δt). The worked example connects this operation to signals in Lemonergy Studio.

Interface

Sampled rate limiter interfaceInputs or arguments on the left, observed outputs on the right. Conserving terminals appear below the component. The tables give units and behavior.Sampled rate limiterStudio blockin0out0
Original Lemonergy interface view. Lines identify ports; they are not a completed simulation circuit.
Ports and observed outputs
NameDirectionUnitMeaning
in0input1Value; real scalar.
out0output1Limited; real scalar.

Parameters

Defaults are initial model values. Select values for your own model and operating conditions.

Configuration fields
ParameterUnitDefaultMeaning and limits
Sample period
sampleTimeS
s0.1Exact sample grid period. Elapsed-time integration begins after initialization.
Minimum 1e-06
Rising rate
params[0]
output units/s2Configured finite numerical parameter.
Falling rate magnitude
params[1]
output units/s3Configured finite numerical parameter.
Initial output
tables[0]
1[0]Configured coefficients or initial values in column-major order.

Equations and rules

  • y[k] = y[k−1] + clamp(u[k]−y[k−1], −fall_rate Δt, rise_rate Δt)

Worked example

Sampled rate limiter — worked example

Value = 10. Limited at 1 s = 2.

Open Studio example after release →
Numerical checks for the bundled synthetic example
OutputTime (s)Expected valueUnitAbsolute tolerance
Limited
out0
1211e-08

Explore the recorded outputs

Sampled rate limiter recorded example

Sampled rate limiter
Sampled rate limiter against timeRecorded synthetic simulation values. Time in seconds; output in —.-0.1600.420.2510.51.580.752.161—Time (s)
Sampled rate limiter: 0 — at 0 s

11 actual recorded samples. Lines are visual guides between samples. Synthetic example, not measured cell data.

Download the recorded samples (JSON) · Open this Studio example after release

Use in a workflow

Sampled rate limiter — worked example

Limits how quickly each sampled output can rise or fall.

  1. Sampled rate limiter: y[k] = y[k−1] + clamp(u[k]−y[k−1], −fall_rate Δt, rise_rate Δt). The worked example connects this operation to signals in Lemonergy Studio.
    • Use the block reference for settings and connections.
    • Implementation tested locally; public release pending.
Open Studio example after release

Connected concepts

Limits and interpretation

  • Actual elapsed sample duration limits each output change. Ideal continuous slew tracking and continuous zero-crossing localization are not implemented.
  • Shapes and element types are explicit. Values must be finite; automatic reshaping and unit conversion are not performed.

Reference basis

This software operation and its numerical conventions are defined by the public contract and worked example; no external research result is claimed.

Implementation sources

This reference follows the public interface and locally verified numerical checks for an upcoming release.

Contract: Lemonergy Studio public contract · Verification record: verification-2026-10-27

  • docs/glossary/native-block-verification.json

This implementation and its workflow uses (JSON) · Knowledge graph (JSON-LD)