Error using mtimes (inner dimension must agree)
Infos
Cette question est clôturée. Rouvrir pour modifier ou répondre.
Afficher commentaires plus anciens


Dear all, Kindly help me with this issue. Below is my screenshot of the coding.
if true
function [ theta, E, D,FL] = OP1(AngleMax,necktodiameter,alpha,beta)
global a b
a = 52; %fixed at a rate of 52 degree
b = 15; %fixed at a rate of 15 degree
theta = (AngleMax)-(2*asind(1./(necktodiameter)));
E = cosd(theta/2) - sind(alpha).*cosd(beta).*cosd(a).*cosd(b);
D = ((1-((sind(alpha)).^2*(cosd(beta).^2).^2))*(1-(cosd(a)).^2*(cosd(b).^2))) - E.^2;
FL = acosd((((((-sind(beta)).*(cosd(a)).*(sind(b))) + ((cosd(alpha)).*(cosd(beta)).*(sind(a)))).*E) - ((((cosd(alpha)).*(cosd(beta)).*(cosd(a)).*(sind(b)))+((sind(beta)).*(sind(a)))).*sqrt(D)))./((1-sind(alpha).^2.*cosd(beta).^2).*(1-cosd(a).^2.*cosd(b).^2)));
end
2 commentaires
Dear FarisM,
we are happy to help you with your questions, but it would be a great help for us if you learned to include code as text, and not as screenshots. Screenshots actually just makes it harder for us to help you. When you are writing your question (or comment), you will see below the text box a preview box: this shows how your question will look when you post it. Then above the text box you will find several buttons: the one you really need to learn how to use is labebelled {} Code. Please use this button to format your code as text, and do not include it as screen shots. If the code is large, it is preferred that you upload it using the paperclip button instead. This might also be of interest:
Have fun learning about MATLAB!
FarisM
le 10 Fév 2015
Réponses (2)
Michael Haderlein
le 10 Fév 2015
Modifié(e) : Michael Haderlein
le 10 Fév 2015
Posting a screen shot is not so helpful. It's much easier for us to help if we can simply copy-paste the code into our command window.
Anyway, one dot is missing when you calculate FL. Instead of
/((1-sind(alpha).^2*cosd(beta).^2
it needs to be
./((1-sind(alpha).^2*cosd(beta).^2
1 commentaire
FarisM
le 10 Fév 2015
Torsten
le 10 Fév 2015
0 votes
E=cosd(theta/2)-sind(alpha).*cosd(beta).*cosd(b);
Best wishes
Torsten.
4 commentaires
FarisM
le 10 Fév 2015
Titus Edelhofer
le 10 Fév 2015
Hi Faris,
a general advice: it sometimes helps to split the computation up using intermediate variables, it makes everything much easier to read (and as a consequence, to debug) ...
Titus
FarisM
le 10 Fév 2015
Torsten
le 10 Fév 2015
D = ((1-((sind(alpha)).^2.*(cosd(beta).^2).^2)).*(1-(cosd(a)).^2.*(cosd(b).^2))) - E.^2
My advice:
Change all "/" or "*" or "^2" to "./" or ".*" or ".^2" in your code.
Best wishes
Torsten.
Cette question est clôturée.
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!