2014-05-12 3 views
0

Я использую функцию решения для решения 7 уравнений с 7 переменными. Функция работает хорошо, но после решения уравнений я хочу сохранить переменные в виде матрицы. Проблема в том, что она сохраняет его как структуру. Например:Решение системы уравнений - назначение переменных

syms x y   
S = solve(x==3 , y==5-x);  
y1(1,1) = S.y; 

y1 является структурой. Зачем? Как я могу сохранить его в виде матрицы?

+0

Я считаю, что вы можете использовать 'c = struct2cell (s)' для преобразования структуры 's 'в массив ячеек' c' в matlab. Проверьте эту ссылку: http://www.mathworks.se/help/matlab/ref/struct2cell.html Надеюсь, это поможет! –

+1

не работает ... но double is :) – user3121718

ответ

1

S.y - символическая переменная, вы должны указать convert it to a numeric, если хотите сохранить ее как численный результат.

E.g.

y1(1,1) = double(S.y); 
+0

спасибо! это работает! – user3121718

Смежные вопросы