Функция решения уравнений в Matlab.Как мне обрабатывать ошибки [eqns,vars] = getEqns(varargin{:})?
Вопрос
Я использую Matlab и использую его функцию solve.Я запускаю этот код и продолжаю получать эту ошибку [eqns,vars] = getEqns(varargin {:}) Я понял, что у меня были некоторые проблемы с parens, и исправил их, но это все еще работает, есть идеи?
Asp = 3.90; Arg = 12.48; Lys = 10.54; His = 6.04; Glu = 7.70; Gly = 7.50; Val = 7.44; Pro = 8.36; Ser = 6.93; Thr = 6.82; Tyr = 10.07; Ala = 7.59; Met = 7.00; Cys = 5.02; syms pH; solve( '55*(10.^(pH-Glu))/(1+(10.^(pH-Glu))) + 43*(1/(1+(10.^(pH-Arg))))+ 55*(10.^(pH- Asp))/(1+(10.^(pH-Asp))) + 22*(1/(1+(10.^(pH-Lys))))+ 13*(10.^(pH-Tyr))/(1+(10.^(pH-Tyr))) + 6*(1/(1+(10.^(pH-His)))) + 1*(10.^(pH-Cys))/(1+(10.^(pH-Cys)))');
Решение
Я полагаю, что ошибка связана с вашим уравнением.Независимо от того, является ли 'pH' положительным или отрицательным, ваше уравнение никогда не может быть равно нулю, поскольку все вычитания происходят в экспоненте.Вы проверили знаки в остальной части уравнения?
Не связан с StackOverflow