How can I transform 3 dimensional data into 1 dimensional data?

10 views (last 30 days)
I have a bunch of data acquired using an iPhone seismometer app that I need to analayze.
It is presented as (accelerations relative to g), in three dimensions x, y and z. The accelerations oscillate around a baseline close to zero.
I need to be able to somehow integrate these numbers to form a 'tremor intensity' value (which can be dimensionless if necessary), which I could then use to plot a single moving average of the signal's energy.
I am a Matlab newbie.

Answers (1)

Star Strider
Star Strider on 18 Apr 2015
The simplest way may be to take the Euclidean norm of the three channels by row:
S = randi(10, 10, 3); % Random (10x3) matrix
TI = sqrt(sum(S.^2,2)); % Tremor Intensity
where ‘TI’ is sqrt(x^2+y^2+z^2) for each row of ‘S’

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!