Error: index exceed matrix dimension!

Can someone help me that why i am getting error when I try to extract FRF graph from transfer_from_modes.m file.
Values that I am considering are below:
In rectangular_plate_fea.m : Length = 19.7, width = 19.7, thickness = 0.197. damping 0.000999. nodes along x and y are 20,20. First 10 frequencies extraction. boundary conditions = cantilevered thin plate
In transfer_from_modes.m : stiffness/mass, force/displacement options and homogeneous plate.
mass and stiffness matrix are same that I got from rectangular_plate_fea.m file. I consider frequency step 25 , minf= 100, maxf=200.
My problem Is when I enter 1200 dof for response and 609 for excitation I get error of Index exceed matrix dimensions. why I am getting this either where i am making mistake In whole analysis.What should I consider if I am applying a concentrated force somewhere in the middle of plate at a specific node?
.m files are attached with there supporting functions.

3 Comments

It would help to know the correct sequence of input values, in order. Plate type? Material? uniform nonstructural mass? inputs to specify mass??
In rectangular_plate_fea.m
Length 19.7
width 19.7
nodes along x 20
nodes along y 20
plate type = homogeneous
thickness = 0.197
material = aluminium
non structural mass = no
Boundary condition = other (bottom edge free, right edge free, top edge free, and left edge fixed)
First n eigen values
10 vectors
iterations 2 In transfer_from_mode.m
Input method = mass/stiffness
output = displacement/force
units = inch
mass matrix name = mass
divide by 386 = no
stiffness matrix name = stiff
damping input = constant for all
damping ratio = 0.000999
mode no of interest 6
frequency step = 25
maxf = 300
minf = 200
dof pair input method = manual
diplasy plots yess
fig_num 1
response = 1200
excitation 609
Onward frequency step you may choose any values according to above analysis. Help me resolve this error kindly

Sign in to comment.

 Accepted Answer

You have 20 x 20 = 400 nodes, and if unconstrained there would be 3 dof per node, for a total of 1200, matching the 1200 you select for response.
However, you are not unconstrained: your "other" constraint fixing the left edge is reducing your dof from 1200 to 1104, so the calculations are on 1104 x 1104 matrices and you are trying to ask for the 1200'th of those.

3 Comments

Yes you are right thank u. But now which matrix should I call for, or I should enter manually 1104. am still getting
Error:
Error using save Unable to write file H_disp_force_1140_609.txt: permission denied.
Error in transfer_from_modes_H_files (line 57) save(v1,'str1','-ASCII');
Error in transfer_from_modes (line 255) [varname1,varname2,varname3]=transfer_from_modes_H_files(iam,i,k,freq,H,HM);
You should manually enter 1104 (I guess.)
You should be running your code from a directory that you have write access to.
Sir @Walter Roberson thank you so much! Its working now.

Sign in to comment.

More Answers (0)

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!