Channel Correlations: Creating Realistic Multi-Sensor Data
Channel correlations allow you to define statistical relationships between channels in multi-channel time series, essential for creating realistic data from multi-sensor systems where measurements influence each other.
Prerequisites
- Understanding of multi-channel generation
- At least 2 channels configured
- Basic understanding of correlation concepts
What Are Channel Correlations?
Correlation measures how two variables move together. In multi-sensor data, correlations arise from: - Shared environment (temperature sensors in same room) - Physical coupling (pressure and temperature in closed system) - Common causes (vibration axes on same machine) - Process dependencies (upstream affects downstream)
Correlation Coefficient Range
Correlation values range from -1.0 to +1.0:
+1.0 Perfect positive correlation
When one increases, other increases proportionally
+0.7 Strong positive correlation
Generally move together, some independence
+0.3 Weak positive correlation
Slight tendency to move together
0.0 No correlation
Completely independent
-0.3 Weak negative correlation
Slight tendency to move opposite
-0.7 Strong negative correlation
Generally move in opposite directions
-1.0 Perfect negative correlation
When one increases, other decreases proportionally
Why Correlations Matter
Without Correlations (default): - Each channel is statistically independent - Unrealistic for sensors measuring related phenomena - Example: 3 temperature sensors in same room showing completely different patterns
With Correlations: - Channels move together realistically - Mimics real multi-sensor behavior - Example: 3 temperature sensors in same room showing similar patterns with local variations
How Phoenix Applies Correlations
Phoenix uses Cholesky decomposition to apply correlations mathematically:
- Generate independent channels with configured properties
- Normalize each channel (zero mean, unit variance)
- Build correlation matrix from your specifications
- Apply Cholesky transformation to create correlations
- Denormalize back to original scale and variance
This ensures: - Correlations are mathematically exact - Original signal properties (mean, variance) are preserved - Only the noise components are correlated
Configuring Channel Correlations
Step 1: Create Multiple Channels
Correlations require at least 2 channels:
- Navigate to "Channels" section
- Click "Add Channel" to create Channel 1
- Click "Add Channel" again for Channel 2
- Configure each channel's properties
The "Channel Correlations" section appears automatically when you have 2+ channels.
Step 2: Add a Correlation
- Scroll to "Channel Correlations" section
- Click "Add Correlation" button
- A new correlation entry appears with:
- Channel A dropdown
- Channel B dropdown
- Correlation value input
- Configure the correlation (see below)
[Screenshot Required: Channel Correlations Interface] 1. With 3 channels configured 2. Add 2 correlations 3. Capture: Channel Correlations section showing correlation list 4. Purpose: Show correlation configuration UI
Step 3: Select Channel Pair
Choose which two channels to correlate:
Channel A Dropdown: Select first channel Channel B Dropdown: Select second channel
Important: - Cannot correlate a channel with itself - Order doesn't matter (A-B same as B-A) - Each pair should only be defined once
Example:
Channel 1 ↔ Channel 2: Valid
Channel 2 ↔ Channel 1: Same as above (don't add both)
Channel 1 ↔ Channel 1: Invalid (channel with itself)
Step 4: Set Correlation Value
Enter correlation coefficient between -1.0 and +1.0:
Choosing Values: - 0.9 to 1.0: Nearly identical sensors/conditions - 0.7 to 0.9: Strong relationship, common in physics - 0.4 to 0.7: Moderate relationship - 0.1 to 0.4: Weak relationship - -0.4 to 0.1: Little to no relationship - -0.7 to -0.4: Moderate inverse relationship - -0.9 to -0.7: Strong inverse relationship - -1.0 to -0.9: Nearly perfect inverse
Step 5: Add More Correlations (Optional)
For N channels, you can define up to N×(N-1)/2 unique pair correlations:
2 channels: 1 possible correlation
3 channels: 3 possible correlations
4 channels: 6 possible correlations
5 channels: 10 possible correlations
10 channels: 45 possible correlations
You don't need to define all possible pairs. Undefined pairs default to correlation = 0 (independent).
Step 6: Validation
Phoenix validates your correlation matrix:
Automatic Checks: - Values between -1.0 and +1.0 - No self-correlations - Matrix is "positive semi-definite" (mathematically valid)
Positive Semi-Definite Requirement: Some correlation combinations are mathematically impossible. Phoenix prevents these.
Example of Invalid Matrix:
A-B: +0.9
B-C: +0.9
A-C: -0.9
This is impossible: if A and B move together (+0.9),
and B and C move together (+0.9), then A and C must
also move somewhat together, not opposite (-0.9).
Phoenix will show an error if your correlations create an impossible matrix.
[Screenshot Required: Correlation Validation Error] 1. Configure impossible correlations (e.g., above example) 2. Attempt to preview 3. Capture: Error message showing invalid correlation matrix 4. Purpose: Show validation feedback
Step 7: Preview with Correlations
Click "Preview" to generate correlated multi-channel data:
- Phoenix generates independent channels
- Applies correlation transformation
- Renders multi-channel chart
- Displays statistics per channel
Verifying Correlations in Chart: - Positively correlated channels move together (similar shapes) - Negatively correlated channels move opposite - Uncorrelated channels move independently - Zoom in to see correlation patterns more clearly
[Screenshot Required: Correlated Channels] 1. Configure 3 channels with high positive correlations (0.8-0.9) 2. Preview 3. Capture: Chart showing 3 traces moving together 4. Purpose: Demonstrate positive correlation visually
Common Correlation Patterns
High Positive Correlation (0.85+)
Use Cases: - Temperature sensors in same room - Pressure sensors on same vessel - Collocated environmental sensors
Example: 4 Temperature Sensors in Server Room
All sensors measure same ambient temperature with local variations
Correlations:
Sensor 1 ↔ Sensor 2: 0.90
Sensor 1 ↔ Sensor 3: 0.88
Sensor 1 ↔ Sensor 4: 0.85
Sensor 2 ↔ Sensor 3: 0.92
Sensor 2 ↔ Sensor 4: 0.87
Sensor 3 ↔ Sensor 4: 0.89
Interpretation: All sensors track room temperature closely
with small local differences
[Screenshot Instructions: Temperature Array] 1. Create 4 channels: - Names: "Sensor 1" through "Sensor 4" - Means: 22, 22.5, 21.8, 22.2 (slight differences) - Noise: All 0.4 - Trend: All 0.001 (slow warming) 2. Add correlations as above 3. Duration: 2 hours, Sampling: 0.01 Hz 4. Preview and capture 5. Purpose: Realistic correlated temperature array
Moderate Positive Correlation (0.4-0.7)
Use Cases: - Related but not identical processes - Partial physical coupling - Shared but not dominant influences
Example: Multi-Zone HVAC System
Different zones partially influence each other via air circulation
Correlations:
Zone 1 ↔ Zone 2: 0.55 (adjacent zones)
Zone 1 ↔ Zone 3: 0.32 (distant zones)
Zone 2 ↔ Zone 3: 0.48 (adjacent zones)
Low/No Correlation (0-0.3)
Use Cases: - Independent measurements - Unrelated processes - Isolated sensors
Example: Multi-Parameter Process Monitor
Temperature, Flow, and Pressure measuring independent aspects
Correlations:
Temperature ↔ Flow: 0.1 (weak relationship)
Temperature ↔ Pressure: 0.15 (weak relationship)
Flow ↔ Pressure: 0.05 (nearly independent)
Negative Correlation (-0.4 to -0.9)
Use Cases: - Inverse relationships - Compensating systems - Thermodynamic laws (pressure vs. volume)
Example: Thermal System with Cooling
As temperature increases, cooling valve opens more (inverse)
Correlations:
Temperature ↔ Cooling: -0.75
Example: Seesaw/Balance
Two ends of a balance move opposite
Correlations:
End A ↔ End B: -0.95
[Screenshot Instructions: Inverse Correlation] 1. Create 2 channels: - Channel 1: "Temperature", Mean=80, Noise=2, Trend=0.01 - Channel 2: "Cooling", Mean=50, Noise=1, Trend=-0.005 2. Correlation: -0.75 3. Duration: 1 hour, Sampling: 0.1 Hz 4. Preview and capture 5. Purpose: Show negative correlation pattern
Mixed Correlation Patterns
Example: 3-Axis Vibration with Partial Coupling
X and Y partially coupled (mechanical), Z independent (gravity)
Correlations:
X ↔ Y: 0.35 (mechanical coupling)
X ↔ Z: 0.05 (minimal)
Y ↔ Z: 0.08 (minimal)
Advanced Correlation Techniques
Correlation vs. Channel Configuration
Important: Correlations affect only the noise components, not oscillations or trends.
Example:
Channel 1: Mean=100, Noise=5, Oscillation=10 Hz
Channel 2: Mean=200, Noise=3, Oscillation=20 Hz
Correlation: 0.8
Result:
- Noise components are 80% correlated
- Oscillations remain independent (10 Hz vs. 20 Hz)
- Means remain different (100 vs. 200)
To create fully correlated oscillations: 1. Use same frequency on both channels 2. Use same or similar amplitude 3. Use same phase 4. Add correlation for noise
Partial Correlation Networks
You don't need to define all pairwise correlations. Undefined pairs default to 0.
Example: Chain Pattern
Channels: A, B, C, D
Define only:
A ↔ B: 0.7
B ↔ C: 0.7
C ↔ D: 0.7
Result:
A ↔ D: ~0 (no direct correlation)
A influenced by B, B by C, C by D (indirect chain)
Symmetric Correlation Matrices
Phoenix automatically ensures symmetry: - If you define A ↔ B: 0.5 - Then B ↔ A is automatically 0.5 - Don't define both directions
Troubleshooting
"Correlation matrix is not valid" error
Cause: Your correlation combination is mathematically impossible (not positive semi-definite)
Common Scenarios:
Scenario 1: Triangle Inequality Violation
Problem:
A ↔ B: +0.9
B ↔ C: +0.9
A ↔ C: -0.8 ← Impossible
Fix: If A and B are similar (+0.9), and B and C are similar (+0.9),
then A and C must also be somewhat similar.
Change A ↔ C to +0.5 or higher.
Scenario 2: Extreme Values
Problem:
A ↔ B: +0.99
B ↔ C: +0.99
C ↔ D: +0.99
A ↔ D: 0.0 ← Unlikely to be valid
Fix: With such high pairwise correlations, A and D must also correlate.
Change A ↔ D to +0.9 or remove some correlations.
General Fix Strategy: 1. Remove all correlations 2. Add them back one at a time 3. Preview after each addition 4. Find which correlation causes the error 5. Adjust that correlation value
Can't see correlation effect in chart
Possible Causes:
- Correlation too weak (< 0.3)
- Weak correlations are subtle
- Zoom in to see patterns
-
Or increase correlation value
-
Noise too small compared to oscillations
- Correlation affects noise, not oscillations
- If noise is tiny, correlation effect is tiny
-
Increase noise amplitude to see correlation
-
Different channel scales obscure correlation
- Channel 1: range 0-10
- Channel 2: range 1000-1010
- Hard to see correlation visually
-
Use similar scales or normalize mentally
-
Duration too short
- Need enough data to see correlation patterns
- Try longer duration or more samples
Correlation in wrong direction
Check: 1. Verify sign: positive (+) vs. negative (-) 2. Confirm correct channels selected (A vs. B) 3. Preview shows expected relationship: - Positive: move together - Negative: move opposite
Cannot add correlation
Possible Causes:
- Only 1 channel exists
- Need at least 2 channels
-
Add another channel first
-
Maximum correlations reached
- For N channels: max N×(N-1)/2 correlations
-
Delete unused channels to free space
-
Duplicate pair
- Already defined A ↔ B
- Don't also define B ↔ A
- Delete one and keep the other
Correlation value won't accept input
Check: 1. Value must be between -1.0 and +1.0 2. Use decimal point (.) not comma (,) 3. Check for typos (1.5 invalid, 0.15 valid)
Best Practices
Start with Physical Understanding
Base correlations on real-world relationships: - Measure actual correlations if possible - Use domain knowledge (thermodynamics, mechanics) - Consult SMEs familiar with the system
Use Realistic Ranges
Too High (> 0.95): - Rarely occurs in real systems - Suggests sensors might be redundant - Use only for nearly identical conditions
Too Perfect (±1.0): - Never occurs in real data (always some noise) - Use 0.95-0.99 for very strong correlations
Too Precise (0.873): - False precision - Round to 1 decimal: 0.9 - Or 2 decimals max: 0.87
Don't Over-Correlate
You don't need to define every possible pair: - Define primary relationships - Let others default to 0 - Simpler is better for troubleshooting
Test Incrementally
- Start with no correlations (all independent)
- Add one correlation
- Preview and verify
- Add next correlation
- Repeat until done
Document Your Choices
When saving time series, include correlation info in description:
Good description:
"3-channel temp array, all correlated 0.85-0.9, simulates server room"
Poor description:
"Test data"
Correlation Examples by Industry
Manufacturing
Assembly Line Temperatures
Stations in sequence, each slightly warmer than previous
Station 1 ↔ Station 2: 0.75
Station 2 ↔ Station 3: 0.75
Station 3 ↔ Station 4: 0.75
Station 1 ↔ Station 3: 0.45 (indirect)
HVAC
Multi-Zone Building
Adjacent zones correlate more than distant zones
Zone 1 ↔ Zone 2: 0.68 (adjacent)
Zone 2 ↔ Zone 3: 0.65 (adjacent)
Zone 1 ↔ Zone 3: 0.42 (one zone apart)
Zone 1 ↔ Zone 4: 0.25 (far apart)
Chemical Process
Reactor with Controls
Temperature and pressure inversely related (thermodynamics)
Flow rate independently controlled
Temp ↔ Pressure: -0.65
Temp ↔ Flow: 0.15
Pressure ↔ Flow: -0.10
Vibration Monitoring
3-Axis on Rotating Equipment
X and Y partially coupled (rotation plane)
Z more independent (axial direction)
X ↔ Y: 0.40
X ↔ Z: 0.10
Y ↔ Z: 0.12
Summary
Channel correlations transform independent multi-channel data into realistic multi-sensor datasets:
- Correlation range: -1.0 (perfect inverse) to +1.0 (perfect direct)
- Affects: Noise components (not oscillations/trends)
- Validates: Must be mathematically possible (positive semi-definite)
- Common values: 0.7-0.9 (strong), 0.4-0.7 (moderate), 0-0.3 (weak)
- Best practice: Base on physical understanding, test incrementally
Next Steps
- Multi-Channel Guide - Review multi-channel fundamentals
- Basic Usage - Understand individual channel configuration
- Technical Reference - Mathematical details of Cholesky decomposition
- Export and Save - Use correlated data in analysis tools
Mastering correlations enables creation of highly realistic multi-sensor test data that accurately represents complex industrial systems.