import freud fails without scipy installed

Issue #29 resolved
Matthew Spellings created an issue

Due at least to the import in sphericalharmonicorderparameters.py. Elsewhere we haven't been enforcing the requirement just to import freud.

Comments (6)

  1. Eric Harper

    is this a fail off

    from freud import *
    

    or something else? I thought Ben or Irrgang used scipy for something? It shouldn't be hard to make this not be an issue for general freud, although if nothing else uses it, we shouldn't have it if there's another way to do it.

  2. Matthew Spellings reporter

    It could be made such that sphericalharmonicorderparameters is not imported automatically when importing freud, or it could be imported just before being used in sphericalharmonicorderparameters, or it could be put inside a try/catch block and error out when sphericalharmonicorderparameters uses it.

  3. Eric Harper

    hmmm...well, I don't necessarily see why scipy is more arduous a requirement than numpy, but at the same time we don't want to have an ever expanding list of requirements. I don't like not auto importing everything with the * import, so I guess I would go with the try/catch

  4. Matthew Spellings reporter

    Well, we don't require scipy to be present for the optional convex hull functionality in freud.shape and acquiring it is not necessarily as simple as a pip install scipy --user since it has many compiled bits, so continuing to not require it seems reasonable to me.

  5. Log in to comment