How can I get system Matrix A,B and C for my state space system of Spring-Mass damper system of n blocks arranged in uniform way?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Sandeep Parameshwara
am 1 Dez. 2019
Kommentiert: Sandeep Parameshwara
am 17 Jun. 2021
I am trying to generate equations of motion for Spring mass (damper) system consisting of N blocks. I want to write such a function that automatically creates equations of motion(that fills these matrices A,B,C) just by passing a value of number of masses in a function input arguement. This is what I want ideally. I know the pattern for equation of motion. My system matrix A is something like
[ -2k k 0 0... 0(n);
k -3k k 0.... 0(n);
0 k -3k k 0... 0(n);
0 0 k -3k k 0 .... 0(n);
.. 0(n);
.. 0(n);
0 0............. k -2k ]
where k is stiffness of the spring. This matrix has some kind of uniform pattern as you can see. How can I write a function to this?
3 Kommentare
Akzeptierte Antwort
Dhananjay Kumar
am 4 Dez. 2019
I think this should be very simple (Writing the generalized matrix in the image). You just need to know array indexing and for loop in MATLAB.
Take as input, a k vector, and a constant n.
For n>=3, loop through i= 2 to n-1, and update the matrix values according to the values in the image (you will need to write just 3 assgnment statements inside the for loop for the three values). For i=1 and i=n update the matrix values outside the loop (total 4 assignment statement).
For n<3, you can update the values in the matrix without loop.
Please first try yourself and then post your doubts here.
3 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!