¿Copiar una función?[r,h]?=?simple(s,varargin)
¿SIMPLE?Buscar?la?forma?más?simple?de?una?expresión?simbólica? o?matriz.
?SIMPLE(S)?intenta?varias?diferentes?simplificaciones?algebraicas?de
?S,?muestra?cualquiera?que?acorte?la?longitud? ?de?la?representación de?S,
?y?devuelve?la?más corta.?S?es?un?SYM.?Si?S?es?una?matriz,?el?resultado
?representa?la?representación?más corta?de?toda?la?matriz?,?cuál?es?
?no?necesariamente?la?representación?más corta?de?cada?individuo? elemento.
?[R,CÓMO]?=?SIMPLE(S)?¿no?muestra?simplificaciones?intermedias,
?pero? devuelve?el?más corto?encontrado,?así?como?una?cadena?que?describe
?la?simplificación?particular.?R?es?un?SYM.?¿CÓMO?es?un? string.
?
?SIMPLE(S,'IgnoreAnalyticConstraints',VAL)?controla?el?nivel?de?
?rigor?matemático?a ?utilizar?las?restricciones?analíticas?y?simplificar?
?(cortes?de?ramas?, ?división?por?cero,?etc).?Las?opciones?para?VAL?son? ¿VERDADERO?o?
?FALSO.?Especifique?VERDADERO?para?relajar?el?nivel?de?rigor?matemático
?en?el?proceso?de?reescritura.?El? ?predeterminado?es?FALSO.
?Ejemplos:
SRHow
cos(x)^2 sin(x)^21simplificar
2*cos(x)^2-sin(x)^23*cos(x)^ 2-1?simplificar
cos(x)^2-sin(x)^2cos(2*x)?simplificar
cos(x) i*sin(x)exp (i*x)?reescribir(exp)
(x 1)*x*(x-1)x^3-xsimplificar(100)
x^3 3*x ^2 3*x1(x1)^
3simplificar
cos(3*acos(x))?4*x^3-3*xsimplificar(100)
simple(asin(sin( x)))?=?asin(sin(x))
simple(asin(sin(x)),'IgnoreAnalyticConstraints',true)=?x
?Consulte?también?SYM/SIMPLIFY,?SYM/FACTOR,?SYM/EXPAND,?SYM/COLLECT.
?Copyright?1993-2011?The?MathWorks,?Inc.
if?builtin('numel', s)?~=?1, s?=?normalizesym(s); fin
p?=?nargout?==?0;
[rsym, h]?=?mupadSimple(s, p, varargin{:});
r?=?privResolveOutput(rsym,?s);
fin
función?[r, h]?=?mupadSimple(s, p, varargin)
h?=?'';
r?=?s;
x?=?symvar(s, 1);
?parse?argumentos:?Buscar?opciones
narg ?=?nargin?-?2;
args?=?varargin;
?default:
opciones?=?'null()';
k?=?1;
mientras?k?lt;=?size(args,?2)
v?=?args{k};
if?ischar(v)?amp;amp;?strcmp(v,?'IgnoreAnalyticConstraints')
if?k?==?size(args,?2);
error(message('symbolic:sym:optRequiresArg',?v))
end
valor?=?args{k 1}; p>
end p>
if?value?==?true
valor?=?'TRUE';
elseif?value?==?false
valor?=?'FALSE';
elseif?strcmp(v,?'IgnoreAnalyticConstraints')?amp;amp;?isa(valor,?'char')
si? strcmp(valor,?'todos')
valor?=?'TRUE';
elseif?strcmp(valor,?'ninguno') p>
valor ?=?'FALSE';
else
error(message('symbolic:sym:badArgForOpt',?v))
fin
else
error(mensaje('symbolic:sym:badarg',?value))
finalizar
opciones? =?[opciones
?',?'?v?'='?value];?#oklt;AGROWgt;
args(k:k 1)?=?[];
else
error(message('symbolic:sym:badarg',?v))
end
end
?Pruebe?el? ¿diferentes?simplificaciones.
[r,h]?=?simpler('simplify',s,r,h,p,options);
[r,h]?= ?simpler('radsimp',s,r,h,p,'null()');
[r,h]?=?simpler('symobj::simplify',s,r, h, p, opciones, '100');
[r, h]?=?simpler('combinar', s, r, h, p, opciones, 'sincos'); >
[r, h]?=?simpler('combinar', s, r, h, p, opciones, 'sinhcosh');
[r, h]?=?simpler( 'combinar', s, r, h, p, opciones, 'ln');
[r, h]?=?simpler('factor', s, r, h, p, 'null ()');
[r, h]?=?simpler('expand',s,r,h,p,options);
[r,h]? =?simpler('combinar',s,r,h,p,opciones);
[r,h]?=?simpler('reescribir',s,r,h,p,'null ()', 'exp');
[r, h]?=?simpler('rewrite', s, r, h, p, 'null()', 'sincos'); /p>
[r, h]?=?simpler('reescribir', s, r, h, p, 'null()', 'sinhcosh'); ]?=?simpler('rewrite',s,r,h,p,'null()','tan');
[r,h]?=?simpler('symobj:: mwcos2sin', s, r, h, p, 'null()');
if?~isempty(x)
[r, h]?=?simpler(' recopilar', s, r, h, p, 'null()', x
end
end
función?[r,h] ?=?simpler(how, s, r, h, p, options, x)
¿SIMPLER?Utilizado?por?SIMPLE?para?acortar?expresiones.
?SIMPLER( ¿CÓMO,S,R,H,P,X)?aplica?el?método?¿CÓMO?con?el?parámetro?opcional?X
?a?la?expresión?S,?imprime?el?resultado?si?P ?es?distinto de cero,?compara?la
?longitud?del?resultado?con?la?expresión?R,?que?se?obtuvo?con?el?método?
H,?y?devuelve?la?cadena?más corta?y?el?método?correspondiente.
if?nargin?lt;?7
[t,err]?=?mupadmex ('symobj::map', s.s, cómo, opciones);
elseif?ischar(x)
[t, err]?=?mupadmex('symobj::map ', s.s, cómo, x, opciones);
else
[t, err]?=?mupadmex('symobj::map', s.s, cómo, x.s, opciones); );
fin
if?err
return;
fin
if?nargin?== ?7 ¿cómo?=?[cómo?'('?char(x)?')'];
end
cómo?=?strrep(cómo,'symobj:: ', '');
if?p? suelto?=?isequal(get(0,'FormatSpacing'),'loose'); si?loose,?disp('?'),? end disp([¿cómo?':']) if?loose,?disp('?'),?end disp(t)
end
cmp?=?mupadmex( 'symobj::simpler',?t.s,?r.s,?0);
if?strcmp(cmp,'TRUE')? r?=?t; h?=?how;
fin
fin