How to change mathematical symbols of division (/ to ./) and multiplication(* to .*) in a very long formula obtained by symbolic tool.
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Mahak SINGH CHAUHAN
am 27 Mär. 2014
Kommentiert: Joseph Cheng
am 27 Mär. 2014
I am using symbolic toolbox in order to write a formula and differentiation etc. After I have to use my final formula in a function. But in obtained formula by symbolic toolbox, symbol of division and multiplication are / and * respectively. When I put the values of a variable in vector or matrix form, It gives the error. So I have to change the symbols manually for example / (division) to ./ and * (multiply) to .*
Is there any alternate way to solve this problem. Thanks in advance.
0 Kommentare
Akzeptierte Antwort
Mischa Kim
am 27 Mär. 2014
Mahak, copy-paste the formula into a script/function editor and use CTRL+F to replace the strings.
Weitere Antworten (1)
Joseph Cheng
am 27 Mär. 2014
Bearbeitet: Joseph Cheng
am 27 Mär. 2014
to do this you can do something like this.
textEquation=char(symsEquation);
division = [0 strfind(textEquation,'/')];
elbyelDivEquation=[];
for i =1:length(division)-1
elbyelDivEquation = [elbyelDivEquation textEquation(division(i)+1:division(i+1)-1) './'];
end
elbyelDivEquation=syms(elbyelDivEquation);
I did the / substitution quickly so didn't verify if it actually does capture whats between the / and then inserts the other portions. but that should do the trick.
2 Kommentare
Joseph Cheng
am 27 Mär. 2014
if this is a one off then Mischa Kim solution would be easier. However if this is going to happen routinely (say in a program or multiple runs in a script) you may want to automate it.
Siehe auch
Kategorien
Mehr zu Symbolic Math Toolbox 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!