Я задал вопрос несколько дней назад here и получил ответ, который кажется, что он сработает - он предполагает использование Linsolve для поиска решений для системы уравнений, которые все по модулю p, где p - целое число без пробелов.Использование решения и/или linsolve с символическим набором инструментов в R2010b
Однако, когда я пытаюсь выполнить команды из предоставленного ответа или страницы справки linsolve
, я получаю сообщение об ошибке: linsolve
не поддерживает аргументы типа «sym». Использует ли linsolve
с переменными sym только в R2013b? Я также попробовал это с копией моей школы, которая является R2012b. Вот код, который я пытаюсь выполнить (из ответа на приведенной выше ссылке):
A = [0 5 4 1;1 7 0 2;8 1 0 2;10 5 1 0];
b = [2946321;5851213;2563617;10670279];
s = mod(linsolve(sym(A),sym(b)),8)
И выход:
??? Undefined function or method linsolve' for input arguments of type 'sym'.
Я также пытался использовать функцию solve
для это, однако, даже если я построю уравнения, представленные матрицами A
и b
выше, у меня возникли проблемы. Вот что я пытаюсь:
syms x y z q;
solve(5*y + 4*z + q == 2946321, x + 7*y + 2*q == 5851213, 8*x + y + 2*q == 2563617, 10*x + 5*y + z == 10670279,x,y,z,q)
И выход:
??? Error using ==> char
Conversion to char from logical is not possible.
Error in ==> solve>getEqns at 169
vc = char(v);
Error in ==> solve at 67
[eqns,vars] = getEqns(varargin{:});
Могу ли я с помощью solve
неправильно? Должен ли я просто попытаться выполнить мой код в R2013b, чтобы использовать linsolve
с символическими типами данных?
Верхняя линия работает! Что означает «\»? Большое спасибо за вашу помощь! – dkhaupt
@dkhaupt: \ is ['mldivide'] (http://www.mathworks.com/help/matlab/ref/mldivide.html) (или' sym/mldivide' в этом случае). Это стандартный низкоуровневый способ [решения систем линейных уравнений] (http://www.mathworks.com/help/matlab/math/systems-of-linear-equations.html) в Matlab. Это даже [на футболке] (http://blogs.mathworks.com/cleve/2013/08/19/backslash/). Инструментарий Symbolic Math перегрузил этот оператор, чтобы реализовать аналогичные процедуры для решения систем символических линейных систем. – horchler