Help with Matrix Summations

Hi,
Below is an output from matlab. I wish to combine this into one matrix & add the three last terms of each elg_nl to the first three in the next elg_nl. How can this be done? The required solution is shown. I may also have more than 3 elg_nl, would I require a loop??
>> elg_nl
elg_nl(:,:,1) =
0
0
0
-6
-3
1
elg_nl(:,:,2) =
-5.0000
0.0000
7.5000
-5.0000
0.0000
7.5000
elg_nl(:,:,3) =
-6
-3
1
0
0
0
>> expected result (12x1matrix)
0
0
0
-11.0000
-3.0000
8.5000
-11.0000
-3.0000
8.5000
0
0
0
Please help, thanks

Réponses (2)

Matt J
Matt J le 27 Jan 2014

0 votes

sum(elg_nl,3)
will produce the middle 6 elements you want. I don't know by what you rule you want it extended to 12x1, unless it's just zero padding.

2 commentaires

Peter cullen
Peter cullen le 27 Jan 2014
Thanks, I am trying to create a finite element code for a portal frame. The zeros indicate zero force at certain nodes and therefore are required. Any other ideas?
Matt J
Matt J le 27 Jan 2014
Modifié(e) : Matt J le 27 Jan 2014
No other ideas are required for any apparent reason. I've given you what you requested, as far as I can tell. I don't imagine you need help padding with zeros, if that's the only missing piece.
Amit
Amit le 27 Jan 2014

0 votes

eigen_nl_expected = [eigen_nl(:,:,1);eigen_nl(:,:,3)]
eigen_nl_expected(4:9) = eigen_nl_expected(4:9) + eigen_nl(:,:,2);

Cette question est clôturée.

Clôturé :

le 20 Août 2021

Community Treasure Hunt

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

Start Hunting!

Translated by