Documentación de rcalc

Copyright (C) 2000 Free Software Foundation, Inc.

Este programa y la documentación son software libre; puedes redistribuirlo y/o modificarlo bajo los términos de la Licencia Pública General de GNU tal y como está publicado por la Free Software Foundation; tanto en la versión 2 de la Licencia, como (bajo tu criterio) cualquier versión posterior. Este programa está distribuido con la esperanza de que será útil, pero SIN NINGUNA GARANTÍA; sin ninguna garantía implicita de SER COMERCIAL o ADECUARSE A NINGÚN PROPOSITO PARTICULAR. Mira la Licencia Pública General de GNU para más detalles.

Deberías haber recibido una copia de la Licencia Pública General de GNU con este programa; si no, escribe a la Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

Para más detalles mira en el fichero COPYING.

Índice de contenidos

1. Introducción

2. Uso

3. Referencia

4. Funciones definidas por el usuario

1. Introducción

rcalc es una calculadora simbólica rápida y simple para GNOME, con las siguientes características:

A pesar de ello rcalc no es como otros programas de calculadora, como xcalc, kcalc or gcalc. Por ahora soporta operadores simples como /, *, +, - y ^ (`elevar a la potencia de'), así como funciones más complejas como las funciones trigonométricas (sin, cos, tan, asin, acos and atan), las funciones hiperbólicas (sinh, cosh, tanh, asinh, acosh and atanh), sqrt, log, ln, abs and int. También incluye dos constantes predefinidas, pi y e.

rcalc está preparado para formar parte del entorno de escritorio GNOME y como tal es conforme a la apariencia general de otras aplicaciones GNOME. El interpretador de comandos de rcalc trata de parecerse al de la bash shell, e intenta parecerse al interpretador de comandos del Matlab. ¡Con suerte todo esto se conseguirá y hará de rcalc un programa fácil de usar: díme lo que piensas de él!

rcalc no está pensado para ser un paquete matemático completo; simplemente una calculadora científica conveniente, simple y de ejecución rápida. Si quieres una solución matemática completa para uso intensivo, prueba bc o Dr Genius (ambos libres), o Matlab (comercial).

1.1 Realimentación

Visita el sitio web, http://rcalc.sourceforge.net/ para actualizaciones. Hay foros para discusiones generales, pedir ayuda y sugestiones: por favor acude libremente a ellos.

Si encuentras un error, por favor ve a la página de errores de rcalc e informa de él si no está ya ahí.

Si ninguno de estos sistemas te parece apropiado, entonces envíame un correo <phneutre@icculus.org>.

2. Uso

2.1 Básico

Cuando ejecutas rcalc, se te presenta una simple ventana con un prompt (`rcalc> '); las expresiones se introducen generalmente en este prompt tal y como las escribirías en un papel. La principal excepción a esto es que rcalc no soporta multiplicaciones implícitas: no puedes escribir 3sin(2pi) el ... no reconocerá que lo que quieres decir es `tres multiplicado por el seno de dos multiplicado por pi'. La manera correcta de escribir esta expresión es 3*sin(2*pi).

Si intentas escribir la expresión anterior, verás lo siguiente:

rcalc> 3*sin(2*pi)
        Ans = 0.3283278207189595

El resultado del cálculo ha sido asignado a una variable llamada 'Ans'; en realidad el resultado de todos los cálculos se guarda en Ans siempre que no se expecifique otra acción. Este resultado puede ser usado en posteriores cálculos, por ejemplo:

rcalc> Ans+1
        Ans = 1.328327820718959

El resultado puede ser guardado en otra variable que no sea 'Ans', por ejemplo:

rcalc> MiVariable = Ans*5
        MiVariable = 6.641639103594797

El resultado de este cáculo ha sido ahora guardado en 'MiVariable';' Ans' no ha perdido su valor.

Los nombres de variables, funciones, comandos y constantes son insensibles al tipo: MiVariable, mivariable, MIVARIABLE y MIVaRiAbLe todas refieresn al mismo valor. Cualquier espacio en blanco en una expresión es ignorado, pero no cuando aparezca entre comandos.

Las variables son gestionadas usando los comandos `ls' y `rm' de la misma manera que se gestionan ficheros en una shell, por ejemplo:

rcalc> ls
        Ans      = 1.328327820718959
        MiVariable = 6.641639103594797
rcalc> rm Ans
rcalc> ls
        MiVariable = 6.641639103594797

Continuando el tema de parecido a una shell, hay un comando `man'; prueba a escribir `man man' en el prompt. Otra habilidad copiada de la shell es la de introducir multiples comandos/expresiones en la misma línea, separados por puntos y coma (;), por ejemplo:

rcalc> a=0.223; Tb=0.044; 1/Tb*(1-Ta/Tb)
        Ta = 0.223
        Tb = 0.044
        Ans = -92.45867768595043

Para aquellos que habeis usado Matlab, la mayoría de los comandos estilo shell tienen alias estilo Matlab, por ejemplo help, helpwin, who y clear. Por favor lee la documentación, ya que algunos comandos tienen alguna característica diferente cuando se usa el alias Matlab.

2.2 Configuración

Para configurar rcalc, elige Preferencias... en el menú de persiana Fichero. Aparecerá una ventana con tres secciones, que puedes cambiar usando los marcadores de la parte superior.

2.2.1 Comportamiento

Esta ventana permite cambiar el comportamiento del terminal en el que se ejecuta rcalc. Puedes elegir donde aparecerán las barras de desplazamiento, el número de líneas de texto que se conservarán en memoria para desplazamientos, si el terminal se desplazará a la posición del cursor cuando se pulse una tecla o cuando se presente nuevo texto, y si el cursor parpadeará o se oirá un pitido en ciertas ocasiones.

2.2.2 Apariencia

Esta ventana permite elegir el tipo y color de las fuentes de letra. Si usas fuentes proporcionales descubrirás que el terminal se ve muy extraño. rcalc está pensado para usar fuentes de paso fijo como la Courier o la Lucidatypewriter.

3. Referencia

3.1 Comandos

3.1.1 Exit, Quit

exit
quit

Termina la ejecución del programa.

3.1.2 Help, Man, Helpwin, ?

help [tema]
man <tema>
helpwin [tema]
? [tema]

Muestra la ayuda para el tema, donde tema es generalmente el nombre de un comando o función. Para obtener una lista de los temas, ejecuta `ls commands' o `ls functions'. Help, helpwin o ? sin un tema simplemente muestra la introducción al fichero de ayuda.

3.1.3 Ls, Who

ls [variables|functions|constants|commands]
who

Da una lista de los objetos especificados; si no se le da ningún argumento, ls listará las variables. Who es simplemente un alias de ls variables.

3.1.4 Rm, Clear

rm variable1 [variable2 ...]
clear [variable1 [variable2 ...]]

Elimina de la memorialas variables especificadas. Clear sin argumentos las elimina todas.

3.1.5 Mode, Deg, Rad

mode [deg|rad]
deg
rad

Muestra o cambia los ajustes de la maquinaria de cálculos; es equivalente a la sección cálculos de la ventana de preferencias. Actualmente, los únicos ajustes existentes son las unidades angulares usadas en las funciones trigonométricas.

Mode sin argumentos muestra el modo actual; con un argumento cambia la unidad angular usada. Deg es simplemente un alias de mode deg, e igualmente rad es un alias de mode rad.

3.2 Funciones

3.2.1 Int

int(x)

Devuelve el entero más cercano a x, usando redondeo aritmético.

3.2.2 Abs

abs(x)

Devuelve el valor absoluto de x.

3.2.3 Log, Ln

log(x)
ln(x)

Devuelve el logaritmo en base 10 (log) o el natural (ln) de x.

3.2.4 Sqrt

sqrt(x)

Devuelve la raíz cuadrada de x.

3.2.5 Sin, Cos, Tan, ASin, ACos, ATan

sin(x)
cos(x)
tan(x)
asin(x)
acos(x)
atan(x)

Devuelve el seno, coseno, tangente, arcoseno, arcocoseno o arcotangente de x, en la unidad angular especificada (ver mode).

3.2.6 Sinh, Cosh, Tanh, ASinh, ACosh, ATanh

sinh(x)
cosh(x)
tanh(x)
asinh(x)
acosh(x)
atanh(x)

Devuelve el seno hiperbólico, coseno hiperbólico, tangente hiperbólica, arcoseno hiperbólico, arcocoseno hiperbólico o tangente hiperbólica de x.

3.3 Constantes

3.3.1 Pi

La relación entre la circunferencia y el diámetro de una circunferencia: rcalc usa la definición de la librería, que en mi máquina es 3.14159265358979323846.

3.3.2 E

La base de los logaritmos naturales: rcalc usa la definición de la librería, que en mi máquina es 2.7182818284590452354.

4. User-defined functions

4.1 Introduction

Starting with rcalc 0.4.0, you can define your own functions.

These functions are parsed by default, but if you compiled rcalc using the --enable-compiled-functions configure flag (this particular method is currently unsupported, not enabled by default, and needs a working gcc installed), they are compiled and dynamically linked to the executable when you define them.

Your functions are automatically reloaded at startup (like variables).

4.2 Usage

4.2.1 Define a new function

When defining a function, the variable is x. Currently, you can only define a function that uses only 1 variable (x), that is, you cannot define something like f(x,y)=cos(x) + sin(y).

To create a new function, use the func command:
func [function_name](x)=[function_expression]
Examples:

rcalc> func g(x)=2*x
rcalc> func myfunction(x) = 2*x*x + 7*cos((sin(x))) - abs(x)

If you compiled with --enable-compiled-functions, you can do some advanced stuff like this, provided you write C code that can be put after a return.
rcalc> func fact(x)=(!(int)x) ? 1 : (abs( (int) x ) * fact (abs( (int)x )-1))

4.2.2 Use a function

function_name( [mathematical_expression] )

Example, if both g and myfunction exist:

rcalc> 3*sin(2*pi)
        Ans = 0.3283278207189595

rcalc> g( 5 * cos ( myfunction( 2-Ans ) ) )
        Ans = 9.892698159952772

4.2.3 List functions

ls functions (or just ls func)

This will list both built-in functions (see section 3.2) and user-defined functions.

4.2.4 Remove a function

rm [function_name]

4.3 Error messages

This error messages means your function expression is incorrect (this may differ if you compiled with --enable-compiled-functions) :

rcalc> func t(x)=foo
error : malformed expression.