Adding Dot For Linspace
3 次查看(过去 30 天)
显示 更早的评论
Hello friends,I have parametric equation about 5 paper,I want to add dot for every * and / signs to use linspace.How can I do automatically
采纳的回答
Star Strider
2019-5-6
编辑:Star Strider
2019-5-6
The only change you temporatily need to make is to create your function as a character vector by putting single quotes (') around it first, then removing them from the vectorize output.
Example —
f = exp(-0.1*t) * sin(2*pi*t);
fv = vectorize('exp(-0.1*t) * sin(2*pi*t)')
producing:
fv =
'exp(-0.1.*t) .* sin(2.*pi.*t)'
You then have to manually edit your expression to put it back as a valid expression. That simply means removing the single quotes:
f = exp(-0.1.*t) .* sin(2.*pi.*t)
and your expression is vectorized, ready for your linspace arguments!
EDIT — Corrected typographical errors.
4 个评论
更多回答(1 个)
gonzalo Mier
2019-5-6
You have two possibilities here:
- In the text file, you replace * by .* and / by ./ in all the document (there is an option in the replace to replace all).
- If you have it like a function and want to do it by programming, you can overload the funtion mtimes and mrdivide by times and rdivide as:
function c = mtimes(a,b), c = times(a,b); end
function c = mrdivide(a,b), c = rdivide(a,b); end
You can add this to the end of your file or to your folder.
By preference, always do the first method, as overloading operators is not a good practice unless you try to ofuscate your code, but I have found some moments where it's the only way
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!