Funciones y Matrices


sqrt

Descripción

B = sqrt(Xdevuelve la raíz cuadrada de cada elemento de la matriz X. Para los elementos de X que son negativos o complejos, sqrt(X) produce resultados complejos.
El dominio de la función sqrt incluye números negativos y complejos, lo que puede llevar a resultados inesperados si se utilizan de forma involuntaria. Para números negativos y complejos z = u + i*w, la raíz cuadrada compleja sqrt(z) devuelve
sqrt(r)*(cos(phi/2) + 1i*sin(phi/2))
donde r = abs(z) es el radio y phi = angle(z) es el ángulo de fase del intervalo cerrado -pi <= phi <= pi.
Si desea que los números negativos y complejos devuelvan mensajes de error en lugar de devolver resultados complejos, utilice en su lugar realsqrt .



rem
r = rem(a,b)



r = rem(a,b) returns the remainder after division of a by b, where a is the dividend and b is the divisor. This function is often called the remainder operation, which can be expressed as r = a - b.*fix(a./b). The rem function follows the convention that rem(a,0) is NaN.

ExamplRemainder After Division of Scalar 

Compute the remainder after dividing 5 into 23
a = 23;
b = 5;
r = rem(a,b)
r = 3
Find the remainder after division for a vector of integers and the divisor 3.
a = 1:5;
b = 3;
r = rem(a,b)
r = 1×5

     1     2     0     1     2
Funciones Anidadas
Es posible definir funciones dentro del cuerpo de otra función. Se dice que estas se encuentran anidadas dentro de la función exterior. Una función anidada contiene algunos o todos los componentes de cualquier otra función. En este ejemplo, la función B está anidada en la función A:
function x = A(p1, p2)
...
B(p2)
   function y = B(p3)
   ...
   end
...
end

Funciones anónimas

Una función anónima es una forma simple de la función de MATLAB que se define dentro de una sola instrucción de MATLAB. Está formada por una sola expresión de MATLAB y con cualquier cantidad de argumentos de entrada y salida. Es posible definir una función anónima en la línea de comandos de MATLAB o dentro de una función o script. Esta alternativa ofrece un rápido medio para crear funciones simples sin tener que volver a crear un archivo nuevo para ellas cada vez.
La sintaxis para la creación de una función anónima a partir de una expresión es
f = @(arglist)expression
La siguiente instrucción crea una función anónima que busca el cuadrado de un número. Cuando se llama esta función, MATLAB asigna el valor del argumento de entrada a la variable x, y luego usa x en la ecuación x.^2:
sqr = @(x) x.^2;
Para ejecutar la función sqr, escriba
a = sqr(5)
a =
   25

Funciones principales y subfunciones

Cualquier función que no sea anónima debe definirse dentro de un archivo. Cada archivo de función contiene una función principal que aparece primero, y cualquier número de subfunciones que pueden seguir a la principal. Las funciones principales tienen un alcance más amplio que las subfunciones. Es decir, las funciones principales pueden ser llamadas desde el exterior del archivo que las define (por ejemplo, desde la línea de comandos de MATLAB o desde funciones en otros archivos), mientras que las subfunciones no. Las subfunciones solo son visibles para la función principal y otras subfunciones dentro de su propio archivo.
La función rank que aparece en la sección Funciones es un ejemplo de una función principal.

Funciones privadas

Una función privada es un tipo de función principal. La característica que la distingue es que es visible solo para un grupo limitado de otras funciones. Este tipo de función puede ser útil si se desea limitar el acceso a una función, o cuando se escoge no exponer la implementación de una función.
Las funciones privadas se encuentran en subcarpetas con el nombre especial private. Son visibles solo para las funciones de la carpeta principal. Por ejemplo, suponga que la carpeta newmath está en la ruta de búsqueda de MATLAB. Una subcarpeta de newmath llamada private puede contener funciones que solo pueden ser llamadas por las funciones de newmath.
Como las funciones privadas son invisibles fuera de la carpeta principal, pueden usar los mismos nombres que funciones de otras carpetas. Esto es útil si desea crear su propia versión de una función en particular y, a la vez, conservar la original en otra carpeta. Debido a que MATLAB busca las funciones privadas antes que las funciones estándar, encontrará una función privada llamada test.m antes que un archivo no privado llamado test.m.

Comentarios

Entradas populares