titulo - ¿Hay una calculadora con LaTeX-sintaxis?
titulo en latex (17)
No hay ninguno, porque generalmente no es posible. La marcación de modo matemático LaTeX es marcado de presentación y hay casos en los que no proporciona suficiente información para calcular la expresión.
Tienes razón. LaTeX tal como está no proporciona suficiente información para hacer ningún cálculo. Además, no representa ninguna información para hacerlo. Pero nadie impide escribir en formato LaTeX un texto que contenga dicha información. Es un camino difícil, porque necesita construir un sistema de reglas superpuestas sobre qué contenido del texto en formato Latex debe contener para que su intérprete pueda reconocerlo. Y luego convencer al usuario de que es necesario aprender, etc., etc. La forma más fácil de crear una calculadora lógica e intuitiva de expresiones matemáticas. Y la expresión ya es posible convertir látex. Es casi como lo que dijiste. Esto se implementa en el programa que he señalado. AnEasyCalc permite escribir una expresión mientras escribe el texto plano en cualquier editor de texto. Comprueba, calcula y genera una cadena LateX por sí misma. Es un trabajo muy fácil y rápido. Solo inténtalo y lo verás.
Cuando escribo matemáticas en LaTeX, a menudo necesito realizar aritmética simple en números en mi fuente LaTeX, como 515.1544 + 454 = ???
.
Normalmente copio y pego el código LaTeX en Google para obtener el resultado, pero aún tengo que cambiar manualmente la sintaxis, por ej.
/ frac {154,7} {25} - (289 - / frac {1337} {42})
debe ser cambiado a
154,7 / 25 - (289 - 1337/42)
Parece trivial escribir un programa para hacer esto para las operaciones más comúnmente usadas. ¿Hay una calculadora que entienda esta sintaxis?
EDITAR: Sé que hacer esto perfectamente es imposible (debido al problema de detención). Hacerlo para los casos simples que necesito es trivial. / frac, / cdot, / sqrt y algunas otras etiquetas harían el truco. El programa podría simplemente devolver un error para los casos que no comprende.
<> prueba el programa AnEasyCalc. Permite obtener la fórmula de látex muy fácil: http://steamandwater.od.ua/AnEasyCalc/ :)
Como dice Andy, la respuesta es sí, hay una calculadora que puede entender la mayoría de las fórmulas de látex: Emacs.
Pruebe los siguientes pasos (suponiendo que vaina emacs):
- Open emacs
- Abra su archivo .tex (o active el modo latex)
- coloque el punto en algún lugar entre los dos $$ o, por ej., dentro del entorno de inicio / final de la fórmula (o incluso de la matriz).
- usa el modo incrustado de calc para obtener el máximo asombro
Así que con el punto en la fórmula que dio arriba:
$/frac{154,7}{25} - (289 - /frac{1337}{42})$
presione Cx * d
para duplicar la fórmula en la línea siguiente e ingrese el modo de calc-embedded
, que ya debería haber activado una variante de látex de calc para usted. Su búfer ahora se ve así:
$/frac{154,7}{25} - (289 - /frac{1337}{42})$
$/frac{-37651}{150}$`
Tenga en cuenta que la fracción ya se ha transformado lo más posible. Hacer lo mismo otra vez ( Cx * d
) y presionar cf
para convertir el fraccionario en un número de coma flotante produce el siguiente buffer:
$/frac{154,7}{25} - (289 - /frac{1337}{42})$
$/frac{-37651}{150}$
$-251.006666667$
Cx * d
para duplicar la fórmula y luego ingresé al modo incrustado para tener los valores intermedios; sin embargo, también hay Cx * e
que evita la duplicación y simplemente ingresa al modo incrustado para la fórmula actual.
Si está interesado, debería echarle un vistazo a la página de información de Emacs Calc - Embedded Mode . Y, en general, la ayuda para la calculadora Gnu Emaca junto con el impresionante tutorial interactivo.
El paquete calc le permite hacer algunos cálculos en el origen, pero solo dentro de comandos como /setcounter
y /addtolength
. Por lo que puedo decir, esto no es lo que quieres.
Si ya usa sage , entonces el paquete sagetex es bastante impresionante (si no, es excesivo). Le permite obtener una salida con un buen formato desde una entrada como esta:
The square of
$/begin{pmatrix}
1 & 2 //
3 & 4
/end{pmatrix}$
is /sage{matrix([[1, 2], [3,4]])^2}.
The prime factorization of the current page number is /sage{factor(/thepage)}
El proyecto LaTeXCalc está diseñado para hacer justamente eso. Leerá un archivo TeX y realizará los cálculos. Para obtener más información, consulte la página de inicio en http://latexcalc.sourceforge.net/
Emacs calc-mode acepta entrada de látex. Lo uso a diario. Presione "d", seguido de "L" para ingresar al modo de entrada de látex. Presiona "''" para abrir un mensaje donde puedes pegar tu texto.
Cualquiera que lo haga no es posible está equivocado.
Esto no es exactamente lo que está pidiendo, pero es un paquete agradable que puede incluir en un documento LaTeX para realizar todo tipo de operaciones, incluidas aritmética, cálculo e incluso vectores y matrices:
El nombre del paquete es "calculadora"
http://mirror.unl.edu/ctan/macros/latex/contrib/calculator/calculator.pdf
Hay una manera de hacer lo que quieres, no del todo como describes.
Puede usar el paquete fp (/ usepackage [options] {fp}) el paquete de punto flotante hará lo que quiera; resolver ecuaciones, agregar división y muchas más. Desafortunadamente no leerá las matemáticas de LaTeX. En su lugar, tiene que hacer algo un poco diferente, la documentación es muy pobre, así que le daré un ejemplo aquí.
por ejemplo, si quieres hacer (2x3) / 5 escribirías:
/FPmul/p{2}{3} % /p is the assignment of the operation 2x3
/FPupn/p{/p{} 7 round} % upn evaluates the assignment /p and rounds to 7dp
/FPdiv/q{/p}{5} % divides the assigned value p by 5 names result q
/FPupn/q{/q{} 4 round} % rounds the result to 4 decimal places and evaluates
$/frac{2/times3}{5}=/FPprint/q$ % This will print the result of the calculations in the math.
los comandos FP siempre son ibvisibles, solo FPprint imprime el resultado asociado para que sus documentos no estén desordenados, los comandos FP pueden colocarse donde desee (no verbo) siempre que estén antes de la FPprint asociada.
IIRC Mathematica puede hacerlo.
Mi calculadora puede hacer eso. Para obtener la salida formateada, haga doble clic en la fórmula del resultado y presione ctrl + c para copiarla.
También puede hacer cosas bastante avanzadas (diferenciación, integrales fáciles (y no tan fáciles ) ...).
No hay ninguno, porque generalmente no es posible.
La marcación de modo matemático LaTeX es marcado de presentación y hay casos en los que no proporciona suficiente información para calcular la expresión.
Esa fue una de las razones por las que se creó el marcado de contenido MathML y también por qué MathML se usa en Mathematica. MathML en realidad es una especie de dos idiomas en uno:
- marcado de presentación
- marcado de contenido
Para lograr lo que busca, tendrá que tener MathML con una presentación combinada y un marcado de contenido (consulte la especificación MathML ).
En mi opinión, la mejor opción es utilizar MathML (incluso si es detallado) y convertir a LaTeX cuando sea necesario. Dicho esto, también me gusta mejor la sintaxis LaTeX y tal vez lo que necesitamos es una sintaxis compacta para MathML (algo similar en espíritu a la sintaxis compacta RelaxNG ).
Para los cálculos con LaTeX puede usar un paquete CalcTeX. Este paquete comprende los elementos del lenguaje LaTeX y realiza un cálculo, por ejemplo, su problema está disponible en http://sg.bzip.pl/CalcTeX/examples/frac.tgz o simplemente por favor escriba
/ noindent Para el cálculo utilice los siguientes entornos $ 515.1544 + 454 $ o / [/ frac {154.7} {25} - (289- / frac {1337} {42.}) /] o / begin {ecuación} 154.7 / 25- ( 289-1337 / 42.) / End {ecuación}
Para obtener más información, visite el sitio web del proyecto o póngase en contacto con el autor de este proyecto.
Para realizar las operaciones matemáticas dentro de su LaTeX, también puede consultar el paquete pgfmath, que es más poderoso y conveniente que el paquete de cálculo. Puede encontrar la forma de usarlo en la Parte VI del Manual de paquetes de TikZ y PGF, que puede encontrar aquí (versión 2.10 actualmente): http://mirror.unl.edu/ctan/graphics/pgf/base/doc/generic/pgf/pgfmanual.pdf
Podrías pegarlo en el symbolab que, como bonificación, tiene soluciones paso a paso gratuitas. Además, desde que Symbol usa mathquill, formatea al instante su látex.
Puede ejecutar una función R llamada Sweave en un archivo (principalmente TeX con algún R) que puede reemplazar expresiones R con sus resultados en Tex.
Puede encontrar un tutorial aquí: http://www.scribd.com/doc/6451985/Learning-to-Sweave-in-APA-Style
Teniendo en cuenta que LaTeX es un lenguaje de marcado de Turing completo, dudo mucho que pueda construir algo como esto que no esté integrado directamente en LaTeX. Además, la matemática LaTeX matkup no tiene ningún significado semántico, simplemente describe la apariencia visual.
Habiendo dicho eso, probablemente puedas hackear algo que reconozca un subconjunto no programable del lenguaje matemático LaTeX y escuche el resultado de la misma manera. Si todo lo que le interesa son simples aritméticas con fracciones y números enteros (teniendo cuidado con las fracciones decimales, ya que pueden aparecer como 3{,}141...
en textos alemanes :)) esto no debería ser demasiado difícil. Pero una vez que comienzas con integrales, matrices, etc. Temo que LaTeX carece de expresividad para describir con precisión tus intenciones. Es un sistema de preparación de documentos, después de todo, y por lo tanto no es muy adecuado como entrada para sistemas de álgebra computarizada.
Nota al margen : puede cambiar a Word que tiene, en su versión actual, un lenguaje de marcado matemático suficientemente parecido a LaTeX y aún amigable para Google para términos más simples:
Ilustración del marcado matemático en Microsoft Word http://hypftier.de/dump/word_math_1.png
Con el complemento gratuito Microsoft Math puedes incluso permitir que Word calcule expresiones en el lugar:
WolframAlpha puede tomar entrada en forma TeX.
http://blog.wolframalpha.com/2010/09/30/talk-to-wolframalpha-in-tex/