finding the remainder of the division of two symbolic variables

51 次查看(过去 30 天)
I want to get 2*V^2 from the operation below
syms A V
rem(2*V^2+3A,A)
but it seems like rem() function does not work with symbolic variables. Is there a way to achieve this in another way?
  5 个评论
Elif Cansu Akoguz
Elif Cansu Akoguz 2024-8-3,10:04
Thanks for your answer but the problem with this approach is that it starts from an expression of f in terms of g which should normally be unknown in the beginning. Deducing that expression is the whole point of this exercise. Let me give you a more concrete example:
Assume I want to rewrite the f function below as f=z*(1+bL)^2+t;
syms bL bH A V;
f=(A^2*bL^2 + 2*A^2*bL + A^2 + 4*bH^2*bL^2 - 8*bH*bL + 4)/(8*(bH*bL - 1)^2);
coeffs(f,(1+bL)^2)
Error using mupadengine/feval2sym_NaNsingularity
Invalid indeterminate.

Error in sym/coeffs (line 59)
cSym = feval2sym_NaNsingularity(symengine, 'symobj::coeffs',p.s, args{:});
I want to be able to deduce z=A^2 from this but coeffs function does not take arguements like (1+bL)^2 as input.
Umar
Umar 2024-8-3,16:39
编辑:Walter Roberson 2024-8-3,17:02
Hi @ Elif Cansu Akoguz,
If you manually expand the expression and then extract the coefficients, you can deduce the value of z as A^2 in the rewritten function. Let me illustrate it with example,
syms bL bH A V z t;
f = (A^2*bL^2 + 2*A^2*bL + A^2 + 4*bH^2*bL^2 - 8*bH*bL + 4)/(8*(bH*bL - 1)^2);
% Expand the expression
expanded_f = expand(f);
% Extract the coefficients
coeff_z = coeffs(expanded_f, A^2);
z = coeff_z(1); % Assuming z is the coefficient of A^2
% Verify the result
rewritten_f = z*(1+bL)^2 + t;
This approach will bypass the limitation of the coeffs function with complex arguments. Hope this helps.

请先登录,再进行评论。

回答(1 个)

Aditya
Aditya 2024-8-1,13:26
you can use "quorem" function to get the Quotient and remainder for a particular expression:
here is an example on how to do it:
[q, r] = quorem(expr, A, A);
To read more about this function refer to this link:

类别

Help CenterFile Exchange 中查找有关 Symbolic Variables, Expressions, Functions, and Preferences 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by