Функция решения уравнений в Matlab.Как мне обрабатывать ошибки [eqns,vars] = getEqns(varargin{:})?

StackOverflow https://stackoverflow.com/questions/1768931

  •  21-09-2019
  •  | 
  •  

Вопрос

Я использую 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' положительным или отрицательным, ваше уравнение никогда не может быть равно нулю, поскольку все вычитания происходят в экспоненте.Вы проверили знаки в остальной части уравнения?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top