Solve parametric equations involving two vectors

2 visualizzazioni (ultimi 30 giorni)
Hi, I am trying to create a function that finds a vector 'P ' from two parametric lines generated by vectors, these lines are 'O' and 'Bet'. 'P' is the point where these two lines meet. There seems to be a problem with the way I am defining the parameter 't', which describes this lines. How can I solve this?
function [P] = VCI (mag1, X, inicial1, mag2, Y, inicial2)
A = [mag1.*cosd(X) mag1.*sind(X)]'+inicial1;
B = [mag2.*cosd(Y) mag2.*sind(Y)]'+inicial2;
if X==Y || (X==Y+180 || Y==X+180)
syms t real
O= [-mag1.*sind(X).*t mag1.*cosd(X).*t]'+inicial1;
Bet=(A-B).*t+A;
S=solve(O==Bet,t);
P=(A-B).*S+A
end
%The following is an example of what I get when I run the code
>> VCI(10, 50, [0;0], 5, 50, [0;1])
Error using symengine
Array sizes must match.
Error in sym/privBinaryOp (line 1039)
Csym = mupadmex(op,args{1}.s, args{2}.s, varargin{:});
Error in .* (line 323)
X = privBinaryOp(A, B, 'symobj::zipWithImplicitExpansion', '_mult');
Error in VCI (line 9)
P=(A-B).*S+A
  1 Commento
Matt J
Matt J il 22 Nov 2021
You need to demonstrate the problem for us. We don't know how you ran this function or what you see as a result.

Accedi per commentare.

Risposte (1)

Shanmukha Voggu
Shanmukha Voggu il 2 Dic 2021
Hi Marol,
symengine is not recommended. Use equivalent Symbolic Math Toolbox™ functions that replace MuPAD®functions instead. For more information, see Compatibility Considerations.
Refer this for more information

Categorie

Scopri di più su Symbolic Math Toolbox in Help Center e File Exchange

Prodotti


Release

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by