Consulte el archivo AUTORES para obtener la lista de autores.
Y muchas más personas ayudaron en la lista de correo de SymPy, informaron errores, ayudaron a organizar la participación de SymPy en Google Summer of Code, el Google Highly Open Participation Contest, Google Code-In, escribieron y bloguearon sobre SymPy...
Licencia: La nueva licencia BSD (consulte el archivo LICENCIA para obtener más detalles) cubre todos los archivos en el repositorio Sympy a menos que se indique lo contrario.
Nuestra lista de correo está en https://groups.google.com/forum/?fromgroups#!forum/sympy.
Tenemos un chat comunitario en Gitter. No dudes en preguntarnos cualquier cosa allí. Tenemos una comunidad muy acogedora y servicial.
El método de instalación recomendado es a través de Anaconda, https://www.anaconda.com/products/distribution
También puede obtener la última versión de SymPy en https://pypi.python.org/pypi/sympy/
Para obtener la versión git hazlo
$ git clone https://github.com/sympy/sympy.git
Para otras opciones (tarballs, debs, etc.), consulte https://docs.sympy.org/dev/install.html.
Para obtener instrucciones detalladas sobre la instalación y la creación de la documentación, consulte la Guía de estilo de documentación de SymPy.
Todo está en:
https://docs.sympy.org/
Puede generar todo en el sitio anterior en su copia local de SymPy de la siguiente manera:
$ cd doc
$ make html
Entonces los documentos estarán en _build/html . Si no quieres leer eso, aquí tienes un breve uso:
Desde este directorio, inicie Python y:
> >> from sympy import Symbol , cos
> >> x = Symbol ( 'x' )
> >> e = 1 / cos ( x )
> >> print ( e . series ( x , 0 , 10 ))
1 + x ** 2 / 2 + 5 * x ** 4 / 24 + 61 * x ** 6 / 720 + 277 * x ** 8 / 8064 + O ( x ** 10 )
SymPy también viene con una consola que es un contenedor simple de la consola clásica de Python (o IPython cuando esté disponible) que carga el espacio de nombres de SymPy y ejecuta algunos comandos comunes por usted.
Para iniciarlo, emita:
$ bin/isympy
desde este directorio, si SymPy no está instalado o simplemente:
$ isympy
si SymPy está instalado.
Para instalar SymPy usando PyPI, ejecute el siguiente comando:
$ pip install sympy
Para instalar SymPy usando Anaconda, ejecute el siguiente comando:
$ conda install -c anaconda sympy
Para instalar SymPy desde la fuente de GitHub, primero clone SymPy usando git
:
$ git clone https://github.com/sympy/sympy.git
Luego, en el repositorio sympy
que clonaste, simplemente ejecuta:
$ pip install .
Consulte https://docs.sympy.org/dev/install.html para obtener más información.
Damos la bienvenida a las contribuciones de cualquier persona, incluso si es nuevo en el código abierto. Lea nuestra página Introducción a la contribución y la Guía de estilo de documentación de SymPy. Si es nuevo y busca alguna forma de contribuir, un buen lugar para comenzar es mirar los problemas etiquetados como Fácil de solucionar.
Tenga en cuenta que se espera que todos los participantes en este proyecto sigan nuestro Código de conducta. Al participar en este proyecto, usted acepta cumplir con sus términos. Consulte CODE_OF_CONDUCT.md.
Para ejecutar todas las pruebas, ejecute:
$./setup.py test
en el directorio actual.
Para una ejecución más detallada de pruebas o doctests, utilice bin/test
o respectivamente bin/doctest
. GitHub Actions prueba automáticamente la rama maestra.
Para probar las solicitudes de extracción, utilice sympy-bot.
El analizador y el lexer se generaron con la cadena de herramientas ANTLR4 en sympy/parsing/latex/_antlr
y se registraron en el repositorio. Actualmente, la mayoría de los usuarios no deberían necesitar regenerar estos archivos, pero si planea trabajar en esta función, necesitará la herramienta de línea de comandos antlr4
(y debe asegurarse de que esté en su PATH
). Una forma de conseguirlo es:
$ conda install -c conda-forge antlr=4.11.1
Alternativamente, siga las instrucciones en el sitio web de ANTLR y descargue antlr-4.11.1-complete.jar
. Luego exporte CLASSPATH
según las instrucciones y, en lugar de crear antlr4
como alias, conviértalo en un archivo ejecutable con el siguiente contenido:
#! /bin/bash
java -jar /usr/local/lib/antlr-4.11.1-complete.jar " $@ "
Después de realizar cambios en sympy/parsing/latex/LaTeX.g4
, ejecute:
$ ./setup.py antlr
Para limpiar todo (obteniendo así el mismo árbol que en el repositorio):
$ git clean -Xdf
que borrará todo lo ignorado por .gitignore
y:
$ git clean -df
para borrar todos los archivos sin seguimiento. Puedes revertir los cambios más recientes en git con:
$ git reset --hard
ADVERTENCIA: Los comandos anteriores borrarán todos los cambios que haya realizado y los perderá para siempre. Asegúrese de verificar las cosas con git status
, git diff
, git clean -Xn
y git clean -n
antes de hacer cualquiera de esas cosas.
Nuestro rastreador de problemas se encuentra en https://github.com/sympy/sympy/issues. Por favor informe cualquier error que encuentre. O, mejor aún, bifurque el repositorio en GitHub y cree una solicitud de extracción. Damos la bienvenida a todos los cambios, grandes o pequeños, y lo ayudaremos a realizar la solicitud de extracción si es nuevo en git (simplemente pregunte en nuestra lista de correo o canal Gitter). Si tiene alguna pregunta, puede encontrar respuestas en Stack Overflow usando la etiqueta sympy.
Ondřej Čertík inició SymPy en 2005, escribió algo de código durante el verano y luego escribió algo más de código durante el verano de 2006. En febrero de 2007, Fabian Pedregosa se unió al proyecto y ayudó a arreglar muchas cosas, contribuyó con documentación y le dio vida nuevamente. . Cinco estudiantes (Mateusz Paprocki, Brian Jorgensen, Jason Gedge, Robert Schwarz y Chris Wu) mejoraron SymPy increíblemente durante el verano de 2007 como parte del Google Summer of Code. Pearu Peterson se unió al desarrollo durante el verano de 2007 y ha hecho que SymPy sea mucho más competitivo al reescribir el núcleo desde cero, lo que lo ha hecho de 10 a 100 veces más rápido. Jurjen NE Bos ha contribuido con bonitas impresiones y otros parches. Fredrik Johansson ha escrito mpmath y ha contribuido con muchos parches.
SymPy ha participado en todos los Google Summer of Code desde 2007. Puede consultar https://github.com/sympy/sympy/wiki#google-summer-of-code para obtener todos los detalles. Cada año SymPy ha mejorado enormemente. La mayor parte del desarrollo de SymPy provino de estudiantes de Google Summer of Code.
En 2011, Ondřej Čertík renunció como desarrollador principal y Aaron Meurer, quien también comenzó como estudiante de Google Summer of Code, ocupó su lugar. Ondřej Čertík sigue activo en la comunidad, pero está demasiado ocupado con el trabajo y la familia para desempeñar un papel de liderazgo en el desarrollo.
Desde entonces, mucha más gente se ha sumado al desarrollo y algunas personas también se han ido. Puede ver la lista completa en doc/src/aboutus.rst, o en línea en:
https://docs.sympy.org/dev/aboutus.html#sympy-development-team
La historia de git se remonta a 2007, cuando el desarrollo pasó de svn a hg. Para ver el historial antes de ese punto, consulte https://github.com/sympy/sympy-old.
Puedes usar git para ver los desarrolladores más importantes. El comando:
$ git shortlog -ns
mostrará a cada desarrollador, ordenado por compromisos con el proyecto. El comando:
$ git shortlog -ns --since="1 year"
mostrará los mejores desarrolladores del último año.
Para citar SymPy en el uso de publicaciones
Meurer A, Smith CP, Paprocki M, Čertík O, Kirpichev SB, Rocklin M, Kumar A, Ivanov S, Moore JK, Singh S, Rathnayake T, Vig S, Granger BE, Muller RP, Bonazzi F, Gupta H, Vats S , Johansson F, Pedregosa F, Curry MJ, Terrel AR, Roučka Š, Saboo A, Fernando I, Kulal S, Cimrman R, Scopatz A. (2017) SymPy: computación simbólica en Python. PeerJ Ciencias de la Computación 3:e103 https://doi.org/10.7717/peerj-cs.103
Una entrada de BibTeX para usuarios de LaTeX es
@article { 10.7717/peerj-cs.103 ,
title = { SymPy: symbolic computing in Python } ,
author = { Meurer, Aaron and Smith, Christopher P. and Paprocki, Mateusz and v{C}ert'{i}k, Ondv{r}ej and Kirpichev, Sergey B. and Rocklin, Matthew and Kumar, Amit and Ivanov, Sergiu and Moore, Jason K. and Singh, Sartaj and Rathnayake, Thilina and Vig, Sean and Granger, Brian E. and Muller, Richard P. and Bonazzi, Francesco and Gupta, Harsh and Vats, Shivam and Johansson, Fredrik and Pedregosa, Fabian and Curry, Matthew J. and Terrel, Andy R. and Rouv{c}ka, v{S}tv{e}p'{a}n and Saboo, Ashutosh and Fernando, Isuru and Kulal, Sumith and Cimrman, Robert and Scopatz, Anthony } ,
year = 2017 ,
month = Jan,
keywords = { Python, Computer algebra system, Symbolics } ,
abstract = {
SymPy is an open-source computer algebra system written in pure Python. It is built with a focus on extensibility and ease of use, through both interactive and programmatic applications. These characteristics have led SymPy to become a popular symbolic library for the scientific Python ecosystem. This paper presents the architecture of SymPy, a description of its features, and a discussion of select submodules. The supplementary material provides additional examples and further outlines details of the architecture and features of SymPy.
} ,
volume = 3 ,
pages = { e103 } ,
journal = { PeerJ Computer Science } ,
issn = { 2376-5992 } ,
url = { https://doi.org/10.7717/peerj-cs.103 } ,
doi = { 10.7717/peerj-cs.103 }
}
SymPy tiene licencia BSD, por lo que puede usarlo como quiera, ya sea académico, comercial, creando bifurcaciones o derivados, siempre que copie la declaración BSD si la redistribuye (consulte el archivo LICENCIA para obtener más detalles). Dicho esto, aunque no lo requiere la licencia SymPy, si es conveniente para usted, cite SymPy cuando lo use en su trabajo y también considere contribuir con todos sus cambios, para que podamos incorporarlo y todos nos beneficiemos en el fin.