How to convert solution of syms array to a normal array?

I am solving a series function, e.g. .
I want to get the obviously.
For my codes,
b = 2;
y = [1,2,3,4];
syms x [1 4]
S = solve(dot(repmat([a,b],4,1),[x;y].',2)==0);
The answer is
S =
struct with fields:
x1: [1×1 sym]
x2: [1×1 sym]
x3: [1×1 sym]
x4: [1×1 sym]
All I want is an array of [-2,-4,-6,-8]. How to get the array from this 'S' syms struct. Is there other better ways to solve this problem. The example function is a simple one. So it is impossible for me to use 'x = -1/a*b*y'.

 Accepted Answer

Read about double.
syms x y
a = 1 ; b = 2 ;
eqn = a*x+b*y==0 ;
sol = solve(eqn,x) ;
%
y = [1 2 3 4] ;
iwant = double(subs(sol,y))

1 Comment

I think the 'subs' command is what I need more. Thank you.

Sign in to comment.

More Answers (0)

Products

Release

R2019a

Tags

Asked:

on 3 Jun 2020

Commented:

on 3 Jun 2020

Community Treasure Hunt

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

Start Hunting!