GithubHelp home page GithubHelp logo

sympy / sympy_doc Goto Github PK

View Code? Open in Web Editor NEW
34.0 27.0 38.0 11.44 GB

SymPy Documentation repository

Home Page: https://docs.sympy.org/

License: Other

CSS 0.10% JavaScript 0.12% Python 0.16% HTML 99.62%

sympy_doc's Introduction

SymPy Docs Repository

NOTE: The contents of this repository are generated automatically. To make modifications to the SymPy documentation, edit the RST sources in the doc directory of the main SymPy repo. Pull requests should only be made to this repo if you are modifying old version builds of the docs, or for emergency hotfixes.

This git repository contains all the generated SymPy documentation. It is hosted at http://docs.sympy.org/ automatically by github.

To build the docs in SymPy, cd into the SymPy clone, and do

cd doc
make clean
make html

Then the built docs are in _build/html. To update the docs here, there are several things.

Development docs

NOTE: The doctr command that runs on Travis on the sympy/sympy repo does this automatically. There is usually not a need to do this manually.

Build the docs from the latest SymPy master. Then, do

rm -rf dev/
cp -R ../path/to/sympy/doc/_build/html dev/

Then

git add -A dev/

Finally, you need to make sure the index of the different docs on the left of index.html remains intact. Run

./generate_indexes.py

Release docs

NOTE: This should be done automatically by the SymPy release script. It should only be done manually if the release script doesn't do it correctly for some reason.

First, completely remove the old release docs

git rm -rf latest/

Checkout the SymPy release tag and build the docs as above. Then do a cp -R ../path/to/sympy/doc/_build/html latest/

Then run

./generate_indexes.py

And add the results

git add -A dev/ latest/ releases.txt

Making redirects

The generate_redirects.py script can generate redirects from one path to another.

We used to host old versions of the docs on this, but now we only host the latest and development docs. The old docs that were there have redirects to the latest docs. This is only done so that old links can continue to work. It is not necessary to add redirects for future versions.

Pull requests

If you are making a significant change to the documentation in a pull request, feel free to use this site to upload a live version of it. Just create a directory with a reasonable name and put your docs there. If you share the link with a lot of people before the pull request is merged, you might want to sue the generate_redirects.py script to convert the special directory into a redirect to dev once the pull request is merged.

Pushing

Just push the branch up to GitHub. The pages will be updated automatically. If you don't have push access, fork this repo and make a pull request.

Automation

If you want to write a script to automate some or all of this process, that would be great. Just send a pull request. The script should probably go in the SymPy repo, as part of the build script for the release process.

sympy_doc's People

Contributors

advaitpote avatar aktech avatar anutosh491 avatar asmeurer avatar bjodah avatar brocksam avatar cbm755 avatar certik avatar debugger22 avatar eagleoflqj avatar faze-geek avatar gschintgen avatar hanspi42 avatar haru-44 avatar ishanned avatar jksuom avatar jrioux avatar lidavidm avatar mohitacecode avatar moorepants avatar oscarbenjamin avatar psycho-pirate avatar sc0rpi0n101 avatar smichr avatar srjoglekar246 avatar sylee957 avatar tjstienstra avatar tswast avatar upabjojr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sympy_doc's Issues

New faster GitHub pages

I keep getting a warning mail from GH stating this:

The page build completed successfully, but returned the following warning:

GitHub Pages recently underwent some improvements (https://github.com/blog/1715-faster-more-awesome-github-pages) to make your site faster and more awesome, but we've noticed that docs.sympy.org isn't properly configured to take advantage of these new features. While your site will continue to work just fine, updating your domain's configuration offers some additional speed and performance benefits. Instructions on updating your site's IP address can be found at https://help.github.com/articles/setting-up-a-custom-domain-with-github-pages, and of course, you can always get in touch with a human at [email protected]. For the more technical minded folks who want to skip the help docs: your site's DNS records are pointed to a deprecated IP address.

For information on troubleshooting Jekyll see:

  https://help.github.com/articles/using-jekyll-with-pages#troubleshooting

If you have any questions please contact us at https://github.com/contact.

@asmeurer is it possible to make these changes in DNS server? It says that it'll speed up the website.

Combination of $$ and bmatrix does not work?

It seems like bmatrix does not work when combined with $$. I have no understanding of why, but $$ works and bmatrix works when combined with .. math::.

The problem shows as (linsolve):

image

(I'm working on a new PR for SymPy where I have replaced bmatrix with array here, so it may go away if it is merged.)

nC doc example in sympy live shows TypeError: 'Integer' object is not iterable

The first code block for nC shows an error:

Python console for SymPy 1.5.1 (Python 2.7.12)

These commands were executed:
>>> from __future__ import division
>>> from sympy import *
>>> x, y, z, t = symbols('x y z t')
>>> k, m, n = symbols('k m n', integer=True)
>>> f, g, h = symbols('f g h', cls=Function)

>>> from sympy.functions.combinatorial.numbers import nC
>>> from sympy.utilities.iterables import multiset_combinations
>>> nC(3, 2)
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/base/data/home/apps/s~sympy-live-hrd/66.426491309333028408/sympy/sympy/functions/combinatorial/numbers.py", line 1715, in nC
    return nC(_multiset_histogram(n), k, replacement)
  File "/base/data/home/apps/s~sympy-live-hrd/66.426491309333028408/sympy/sympy/functions/combinatorial/numbers.py", line 1435, in _multiset_histogram
    n = list(n)
TypeError: 'Integer' object is not iterable
>>> nC('abc', 2)
3

>>> nC('aab', 2)
2

Also the last code block errors too:

>>> sum(nC(4, i) for i in range(5))
Exception in SymPy Live of type 
<type 'exceptions.TypeError'>
for reference the last 5 stack trace entries are
Traceback (most recent call last):
  File "/base/data/home/apps/s~sympy-live-hrd/66.426491309333028408/app/handlers.py", line 271, in post
    live.evaluate(statement, session, printer, stream)
  File "/base/data/home/apps/s~sympy-live-hrd/66.426491309333028408/app/shell.py", line 280, in evaluate
    exec code in statement_module.__dict__
  File "<string>", line 1, in <module>
TypeError: 'NoneType' object is not iterable

Problem with sympy live shell, in the right bottom of the pages

There is a problem with the live shell functionally which is in the right bottom of the documentation pages.
When I click once to open, it open up. When I click twice(tap, tap) then it get closed but when I click back to open then it does not open up.

Very long page load time

My clothes go out of style waiting for any page on https://docs.sympy.org/latest/ to load.

Chrome Network inspector notes the following did not load - ERR_CONNECTION_TIMED_OUT after 3.9 minutes:

Ubuntu 16.04
both Chrome 70.0.3538.77 and Firefox 63.0

Please fix! It's tricky to use the package without documentation :\

Error in the example "A rolling disk using the Lagrange method"

The 3D case of the disk rolling on a plane is a non-holonomic problem (see https://en.wikipedia.org/wiki/Nonholonomic_system), to obtain the correct equations of motion within the Lagrangian formalism, the method of the indeterminate multipliers must be applied. For this, 5 coordinates must be used (for example, the XY coordinates of the contact point and the three Euler angles) and 2 multipliers corresponding to the two components of the speed of the disk at the contact point, which must be zero.
Although both kinetic and potential energy (in the documentation the potential has the wrong sign) can be calculated from the point of contact so that only the Euler angles appear, using these expressions for the Lagrangian does not obtain the equations of motion correct as these angles do not fully describe the position of the disc.
The correct solution of the equations of motion would be:
{q1 '': -2 * q2 '* q3' / cos (q2), q2 '': 4 * g * sin (q2) / (5 * r) + sin (2 * q2) * q1 '** 2 / 2 + 6 * cos (q2) * q1 '* q3' / 5, q3 '': - (10 * cos (q2) * q1 '- 12 * tan (q2) * q3') * q2 '/ 6}

What is generate_indexes.py needed for?

I'm looking at migrating from doctr/Travis to actions for updating the dev docs. I've also discussed this here: drdoctr/doctr#351 (comment)

It should be straight-forward to switch to Actions but it seems we need the generate_indexes.py script to run and that complicates using the available actions that can deploy to the docs. The script is currently run on Travis when updating the dev docs and also when updating the release docs as part of the release process. It seems to me that the obvious thing to do is to set up an action on this repo that runs generate_indexes.py each time a push is made here. That would simplify things at the other end because it means changes just need to be pushed and this repo will manage itself.

However when I look into the generate_indexes.py script I'm not clear what it's actually doing or if it is really needed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.