Give it a try and see how easy it is to build your own labAlive App. Start with this example where a sine signal shall be fed into a low pass.
-
Step 1
First look for a source that generates the desired signal. Use any of the waveforms or sources listed below. Let's take a sine waveform and type in:
-
Step 2
Now the signal is input to the next system for further processing. Use any system name listed below to create an instance. Here we take the lowpass. To connect a system type in ' - ' and the subsequent system's name. Optionally proceed with further systems.
-
Step 3
The signals can be analyzed with measures. The oscilloscope, "scope", shows the signal over time what is useful for our lowpass experiment. You can just open any measure interactively at runtime. This script opens all scopes right from the start. All its parameters are set to default values.
-
Step 4
To adjust specific system settings, use an extra line in the format 'system method value'. However, you can change all settings manually interactively at runtime.
Now start and create your very own simulation. The following table gives an overview of usefull systems.
Basic systems
-
Waveforms
-
Pulse
-
Connectors
-
Systems
-
Measures
Create your own simulation app on the fly!
Give it a try and see how easy it is to build a runnable app. Connect systems and start. labAlive text looks like a simple programming language. Please note that the documentation is in progress...
Start with a source. Type in a waveform to create a signal generator or any other source. (The first letters are sufficient, e.g. 'saw'.)
Type in ' - ' to indicate that you want to connect it to another system.
Continue with a system. Use any system name listed below, e.g. 'lowpass' to create an instance (case insensitive). This serves a variable name refer to this system later on (case sensitive).
Optionally proceed with further systems. Finally a sink is automatically appended to terminate the system sequence.
All required parameters are set to default values and can be adjusted when the app is executed.
Set system attributes in an extra line in the format 'system method value'. Use the variable name of the system instance, e.g 'lowpass cutoffFrequency 20k'. Refer to the javadoc to see what setter methods the specific system offers.
Further system sequences can be defined in extra lines. It might terminate with a previously used multiple input system, e.g. an adder.
Split a system's output signal by connecting the same system to another.
Separate systems of the same type can be created by using the system's name with postfix '1', '2'...., e.g. lowpass1.
Available waveforms:
- sine
- cosine
- triangle
- sawtooth
- square
- dc
- randomSquare
- laplaceDistributed
- diracDelta
Available sources:
- ComplexDcSource
- ComplexInverseSineGenerator
- ComplexSineGenerator
- ManualInputComplexSource
- FileSignalSource
- UsrpUdpSource
- CosMinusSineGenerator
- CosSineGenerator
- DigitalSignalGenerator
- GaussianNoise
- SignalGenerator
- SineGenerator
- SquarePulseGenerator
- AudioSignalGenerator
- WavSignalGenerator
- AudioStereoSource
- ComplexSamplesSource
Available systems:
- Adder
- Multiplier
- DropMultiplexer
- Mux
- Real2Complex
- DownSample
- SynchronizationDownSample
- RemoveCyclicPrefixSerial2Parallel
- OfdmSymbolMux
- Serial2Parallel
- AddVirtualSubcarrierSerial2Parallel
- Bit2RealSymbol
- Bit2Symbol
- Complex2Real
- Multiplexer
- AddCyclicPrefixParallel2Serial
- OfdmSymbolDemux
- Parallel2Serial
- RemoveVirtualSubcarrierParallel2Serial
- Symbol2Bit
- ToAnalogUpsample
- ToComplexUpsample
- Upsample
- UpsampleHold
- OpticalSplitter
- Splitter
- Sink
- Awgn
- ComplexFirChannel
- DelayChannel
- TwoPathChannel
- FirAwgn
- DopplerMultipathFading
- ExtendedPedestrianAmodel
- JakesComplexMultipathFadingChannel
- MultipathFadingChannel
- RealImaginarySwitch
- ToReal
- Delay
- DigitalFIR
- ExponentialPulse
- Fir2ComplexFir
- GaussLowpass
- Lowpass
- HalfSine
- RootRaisedCosineFilter
- RaisedCosineFilter
- RcLowpass
- Rect
- RectBandpass
- RectHighpass
- RectLowpass
- Sinc
- Sinc2
- ChannelAttenuation
- Gain
- GainDb
- Standartization
- Transferattenuation
- IIR
- Invert
- AnalyticDemodulator
- AnalyticModulator
- BasebandDemodulator
- BasebandModulator
- EquivalentBasebandDemodulator
- EquivalentBasebandModulator
- VoidModemSystem
- OffsetQuadratureDemodulator
- OffsetQuadratureModulator
- MachZehnderInterferoMeter
- QuadratureDemodulatorOptical
- QuadratureModulatorOptical
- ComplexDemodulator
- ComplexModulator
- IqSplitter
- IqSplitterShiftedInphaseBit
- Merger
- QuadratureDemodulator
- QuadratureModulator
- NilPulseShaper
- PulseShaperSwitch
- BinaryDecider
- Expander
- Kompressor
- NonlinearSystem
- Parabola
- Photodiode
- Rectifier
- OfdmReceiver
- OfdmTransmitter
- PrefixFFT
- PrefixIFFT
- PrefixVirtualSubcarrierFFT
- PrefixVirtualSubcarrierIFFT
- SerialFFT
- SerialIFFT
- Systemsequence
- Offset
- OffsetComplex
- Equalizer
- FFT
- IFFT
- PhaseShifter
- Quantizer
- QuantizerErrorOutput
- SystemSwitch
- VoidSystem
myLabAlive - examples
Hello World!
System chain
Initialization
Active
Measures
Demonstration
Further
Issues
Basic systems
In order to make using labAlive for the first time as simple as possible, the following chapter shows you an overview of basic systems. With these systems you are able to construct simple simulations.
Signals & waveforms
- sine
- cosine
- triangle
- sawtooth
- square
- dc
- randomSquare
- LaplaceDistributed
- DiracDelta
- SignalGenerator
- SineGenerator
- GaussianNoise
Pulse
- sinc
- sinc2
- Pulse
- ExponentialPulse
- SqarePulseGenerator
- TimeLimitedPulse
Filter
- Lowpass
- RcLowpass
- GaussLowpass
- RectLowpass
- RectBandpass
- RectHighpass
- RectPass
Else (need better name)
- adder
- multiplier
- multi
- splitter
- sink
- delay
- gain
Measures
- scope
- multimeter
- spectrum
- powermeter
Preferences (Diagram- Settings)
Simulations can use a graphic-based measuring device e.g. oscilloscope or spectrum analyzer. Most times, default settings fit the purpose.
But to give the user the chance to change the settings, labAlive has implemented the preferences menu. Picture 1 shows the variety of functions. Every function is listed in the tables 1 & 2 with the given options.

Minimum | Maximum | |
---|---|---|
XY-meter beam stroke | 0.3 | 10 |
![]() |
![]() |
|
XY-meter subdivisions | 1 | 10 |
![]() |
![]() |
Preferences | ||
---|---|---|
Setting | Options | Example |
XY-meter beam stroke
Hover over the setting to see the changes |
1.0pt - 10.0pt | ![]() |
XY-meter presentation
Hover over the setting to see the changes 🛈 The Presentation-designs are a combination of the following preferences |
Measure Diagram Scope R Scope T Diagram w/o Grid Diagram script Squared paper Graph paper Plot |
![]() |
XY-meter Colors
Hover over the setting to see the changes |
black-white-gray black-white-black yellow-black yellow-green-black black-white-pink black-white-cyan red-black random beam color |
![]() |
XY-meter Style
Hover over the setting to see the changes |
Measure Measure-small Scope T Scope R Diagram Diagram-small Diagram w/o Grid Diagram plot Plot axes only Curve only Axes & grid Axes |
![]() |
XY-meter Stroke widths
Hover over the setting to see the changes |
fine x-fine fine & bigger font bold bold & bigger font x-bold xx-bold xxx-bold |
![]() |
XY-meter grid
Hover over the setting to see the changes |
fine dash dash dotted dash solid |
![]() |
XY-meter unit-line
Hover over the setting to see the changes |
bold grid normal |
![]() |
Signal generator - operate and control
The signal generator is one of the key instrument for the simulations. The basic function of a signal generator is to provide a waveform. Table 1 contains a preview available waveforms.
For a better overview of waveforms, check out the waveform website.

Signalgenerator | |
---|---|
Amplitude | Changes amplitude. |
Frequency | Adjust frequency |
Output | Turn signal generator output on / off. |
Waveform |
sine cosine triangle sawtooth square dc random square laplace distributed dirac delta |
TextCode fuer Oscilloscope Demo
zu Fourier transforms
Centerfrequency einstellen!(Spectrum)
zu LTI system example:RC-lowpass
Simulation Speed!c
zu AM example: Amplitude Modulation
Draw Funktion noch implementieren
zu Signal Spectra 1
Draw Funktion noch implementieren
zu Signal Spectra 2
Window Funktion und Filter length stimmen nicht überein
How o change the signal
sine
spectrum draw Dirac amplitude 0.2 show frequency 2e3
List of waveforms
The table contains all common waveforms. Use this table to get an overview of various waveforms. The corresponding code can be used to simulate the waveform.
Name | Form | Code |
---|---|---|
sine | ![]() |
sine show scope |
cosine | ![]() |
cosine show scope |
triangle | ![]() |
triangle show scope |
sawtooth | ![]() |
sawtooth show scope |
square | ![]() |
square show scope |
dc | ![]() |
dc show scope |
random sqare | ![]() |
random square show scope |
laplace distributed | ![]() |
laplace distributed show scope |
dirac delta | ![]() |
dirac delta show scope |