Undefined operator '*' for input arguments of type 'matlab.graphics.primitive.Line'.
Show older comments
Hello, I am working on Python scripting to make changes over the proposed DoE in Matlab in order to make changes in the model and obtain the results.
When I am passing commands to make changes in the cell structure, I get the error mentioned above. I have tried looking further but I think it has to do with some mathematical oepration on a graphical database which aren't comptabile to work together. But I can't find any other way to make changes in the diemension of my cell.
The problem is when I am trying to define the printf statement whererin I want to write the new data to my text file(pyhton model database script) and then change my mdoel in the abaqus (in background).
Any help is much appreciated. I have described the exact lcoation of error in the text below:::
Problem is mainly in this section and line highlighted in the text below towards the end where I am assigning the value " 0.5 * b(1) "
replaceLine=144;
fid=fopen('BASE_MODEL_MDB.py','r+');
for k=1:(replaceLine-1)
fgetl(fid);
end
fseek(fid,0,'cof');
fprintf(fid,' ''Model-1'', RectangularProfile(a=1.0, b=%5.4f, name=''Profile-2''), ', 0.5*b(1)); %HERE
fclose(fid);
3 Comments
Walter Roberson
on 7 Jan 2020
You do not show us how you created b, but we can predict that at some point earlier you had a statement similar to
b = plot(something);
I suspect that b might be a collection of lines, not just a single line. If you need to, you can extract information from the lines, but at the moment it is not obvious what information you might want to extract. Speculating wildly,
bx = b(1).XData;
by = b(1).YData;
ratio = (max(by) - min(by) / (max(bx) - min(bx));
fprintf(fid,' ''Model-1'', RectangularProfile(a=1.0, b=%5.4f, name=''Profile-2''), ', 0.5*ratio);
Nicholas Ayres
on 7 Jan 2020
Could you please clarify what the variable
b
is. Maybe insert the code where it is defined into your question (and respond to me saying you have done so, so that I get the notification).
If I am not mistaken, it appears that b is taken from a graphics handle and you are just incorrectly indexing it to find the data point you are requiring.
Knowing what b is would help me more directly answer your question.
:)
anant mehrotra
on 7 Jan 2020
Accepted Answer
More Answers (0)
Categories
Find more on Data Type Identification in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!