Re: [Avogadro-devel] Progress this Week

2016-09-11 Thread Marcus D. Hanwell
On Fri, Sep 9, 2016 at 9:28 AM, Geoffrey Hutchison
 wrote:
>
> I have an undergrad student, who will be working on some features in Avogadro 
> v2. Has there been success at VS2015 compilation?

I haven't even tried VS 2015, I thought you had a student who had
managed to get it building with 2015, I was working on 2013 but was
hoping to see some of what that student had done. I think we need to
get 2015 working, and will take a look when I get a chance.

--
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] CMake error (Avo2)

2016-10-07 Thread Marcus D. Hanwell
On Wed, Oct 5, 2016 at 10:10 PM, Geoffrey Hutchison
 wrote:
> I upgraded my laptop to Mac OS Sierra and the new Xcode. I'm now having 
> trouble getting AvogadroApp to compile. I get a weird CMake error when 
> BUILD_MOLEQUEUE is enabled:
>
> CMake Error at 
> /Users/ghutchis/Devel/build/openchemistry/prefix/MoleQueue.app/Contents/Resources/MoleQueueConfig.cmake:20
>  (include):
>   include could not find load file:
>
> 
> /Users/ghutchis/Devel/build/openchemistry/prefix/MoleQueue.app/Contents/lib/cmake/molequeue/MoleQueueTargets.cmake
> Call Stack (most recent call first):
>   avogadro/molequeue/CMakeLists.txt:2 (find_package)
>
> There's no prefix/MoleQueue.app/Contents/lib/cmake directory. Where is this 
> supposed to be created / copied?
>
> If I look into molequeue/lib then I also don't see a cmake directory.
>
That is weird, I am guessing you already tried simply creating a new
build tree. I can take a look on my Mac (probably some time tomorrow),
but it is not Sierra. We haven't really upgraded any machines, or made
a CMake release since Sierra was updated. I will try to dig around a
little and see if I can spot anything, and ask our Mac-based CMake
people. For now I am guessing you can turn it off and build or does it
fail later when AvogadroApp tries to find the libs?

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] VS 2015 Progress

2016-09-21 Thread Marcus D. Hanwell
On Tue, Sep 20, 2016 at 8:38 PM, Pavolik, Ethan Thomas  wrote:
> I'm (bravely) trying to build Avogadro 2 using Visual Studio 2015 and I
> wanted to post on some issues I've resolved so far as well as try to get
> some help on the issues I'm currently facing.
>
Thanks for posting a summary of your progress.
>
> I've been working on a Windows 10 PC that I reset/wiped and completely
> reinstalled VS2015 and the Windows SDK version 10.0.10586.0 to cross out any
> errors being due to my install.
>
> Some things I've noticed and changed so far:
>
>
> zlib- zlib seems to build fine, however there is a post-build instruction
> that is defined somewhere in the cmake files that renames zlib.lib - >
> zlib1.lib. I'm not sure if this is a problem building on other platforms,
> but when I build in debug mode, VS produces zlibd.lib. Then when it attempts
> to do the renaming step, it will say the build failed despite zlibd.lib
> being correctly generated. Building as release seems to work fine.
>
I have never put the time in to get a working debug build on Windows,
this is likely true with VS2010 that I was using too.
>
> libxml2- At the time of this message, libxml 2.9.1 is being used as a
> dependency. After much frustration it turns out that they introduced a fix
> for VS2015 in version 2.9.2 involving a macro definition of "snprintf". I've
> since changed it to use version 2.9.4 on my machine. While that has allowed
> me to compile fine, I'm currently facing unresolved external errors during
> linking which I have yet to look into.
>
I actually had to push libxml2 back in order to get it to build with
VS2010, I am all in favor of moving this forward. It is mainly there
for Open Babel at this point, Avogadro 2 doesn't use it directly.
>
> boost- Attempting to build boost resulted in a single toolset error, which I
> was able to fix by adding
>
> "elseif(MSVC14)
>
> set(_toolset "msvc-14.0")"
> to cmake/External_boost.cmake.

For VS2015 and Avogadro 2/MoleQueue there should be no need for Boost
as far as I know.
>
> HDF5- They recently changed where they were hosting their 1.8.12 source. If
> you don't already have it in your downloads folder you will get a 404 error
> when trying to download the source. After changing the download location and
> version to 1.8.17 I still was not able to compile, but luckily they offer a
> binary compiled on VS2015 which seemed to work fine.

If you have the new location I would love to fix that, if you want to
make a pull request, or I can update it in the superbuild.
>
> Molequeue- Setting "CMAKE_PREFIX_PATH" was required for the required QT
> files to be located.

I have a couple of patches, where CMAKE_PREFIX_PATH will continue to
work, but Qt5_DIR should work and be passed down. I had been using
prefix path as it was the simplest solution.
>
> avogadrolibs- VS2015 wasn't able to recognize the type "uint" so I had to
> add "typedef unsigned int uint" at the top of poscarformat.cpp in order for
> this project to compile.

That is a mistake, I must have missed it in review. It should be
changed to unsigned int, I can patch that.
>
> These are the changes I've made so far in order to build most of the
> solution. Hopefully my notes so far can help some people in a similar
> situation, as well as bring up some issues that may affect others too (such
> as the HDF5 download location).

I will turn HDF5 off by default, the support was experimental and we
don't want to make builds harder unless they are actually using the
library.
>
> Right now my build is being stopped by unresolved externals in both the
> libxml2 and avogadrolibs projects. I'm focusing on solving my issues with
> avogadrolibs right now. The issue seems to be between AvogadroQuantumIo +
> Json::Value (http://pastebin.com/nG4YYRXj)  and AvogadroMoleQueue +
> Avogadro::QtGui::GenericHighlighter (http://pastebin.com/XDbDfAhA).

They are news to me, I will see if I can take a look. Thanks for
posting detailed notes, I can create a few patches for the simpler
fixes, and will see if I can get VS2015 up and running on my machine.

Marcus

--
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] CMake error (Avo2)

2016-10-09 Thread Marcus D. Hanwell
On Sun, Oct 9, 2016 at 11:33 AM, Marcus D. Hanwell
<marcus.hanw...@kitware.com> wrote:
> On Sun, Oct 9, 2016 at 11:32 AM, Marcus D. Hanwell
> <marcus.hanw...@kitware.com> wrote:
>> On Sun, Oct 9, 2016 at 12:04 AM, Geoffrey Hutchison
>> <geoff.hutchi...@gmail.com> wrote:
>>>
>>> > people. For now I am guessing you can turn it off and build or does it
>>> > fail later when AvogadroApp tries to find the libs?
>>>
>>> I can turn it off and complete the build. Unfortunately that entirely turns 
>>> off the python input generators. I'll work around that a bit.
>>>
>> That is weird, it shouldn't just turn off the automatic submission via
>> MoleQueue. I will take a look, maybe some of the logic isn't quite
>> right. The Mac paths are all different, and have quite a few extra
>> levels.
>>
> I meant "it should just turn off the submission via MoleQueue", the
> input generators should still be there, but it is using relative paths
> that might be incorrect.
>
I remember now, sorry for any confusion, the generators do have a hard
dependency on MoleQueue. That could probably be fixed, but we didn't
want to do the work at the time. It would need some refactoring as we
kept all the logic in a single generator class for building the UI,
and the submit job buttons.

I have been trying to reproduce this locally but it works fine
locally. I do not have a machine upgraded to Sierra at this point
though, and it is quite possibly specific to that OS. The file should
be in 'prefix/lib/cmake'.

I will see if I can get access to a machine that has been updated. My
Mac laptop is pretty ancient, and I will likely retire it soon, but
may try an update to see if it will take it.

Marcus

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] VS2015 Build

2016-11-08 Thread Marcus D. Hanwell
On Wed, Oct 12, 2016 at 10:22 AM, Marcus D. Hanwell
<marcus.hanw...@kitware.com> wrote:
> On Sun, Oct 9, 2016 at 5:39 PM, Pavolik, Ethan Thomas <et...@pitt.edu> wrote:
>> I was wondering if you'd made any progress getting VS2015 up and running on
>> your machine. I'm still stuck with the previous link errors when trying to
>> build Avogadro-libs. This week I tried rebuilding QT5 from source and have
>> been digging through and comparing symbols in relevant .lib files trying to
>> figure out why they won't link for me, but I haven't been able to make any
>> progress.
>>
> I need to get back to this, I know we have seen a VS2015 issue around
> jsoncpp in another project. We have also confirmed that PyBind11 needs
> VS2015 as its minimum version on Windows.

I am working my way through issues on this now, I fixed the spglib
find call, and am looking at symbol visibility. I want to have all
this building by the end of the week, hopefully sooner.

Marcus

--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] VS2015 Build

2016-11-10 Thread Marcus D. Hanwell
On Thu, Nov 10, 2016 at 1:14 PM, Marcus D. Hanwell
<marcus.hanw...@kitware.com> wrote:
> On Tue, Nov 8, 2016 at 1:47 PM, Marcus D. Hanwell
> <marcus.hanw...@kitware.com> wrote:
>> On Wed, Oct 12, 2016 at 10:22 AM, Marcus D. Hanwell
>> <marcus.hanw...@kitware.com> wrote:
>>> On Sun, Oct 9, 2016 at 5:39 PM, Pavolik, Ethan Thomas <et...@pitt.edu> 
>>> wrote:
>>>> I was wondering if you'd made any progress getting VS2015 up and running on
>>>> your machine. I'm still stuck with the previous link errors when trying to
>>>> build Avogadro-libs. This week I tried rebuilding QT5 from source and have
>>>> been digging through and comparing symbols in relevant .lib files trying to
>>>> figure out why they won't link for me, but I haven't been able to make any
>>>> progress.
>>>>
>>> I need to get back to this, I know we have seen a VS2015 issue around
>>> jsoncpp in another project. We have also confirmed that PyBind11 needs
>>> VS2015 as its minimum version on Windows.
>>
>> I am working my way through issues on this now, I fixed the spglib
>> find call, and am looking at symbol visibility. I want to have all
>> this building by the end of the week, hopefully sooner.
>>
> So I didn't do very much yesterday, but today spotted a few typos. I
> have all of AvogadroLibs compiling now, just working on cleaning up
> the patch a little. I also have the app compiling, but need to take a
> look at the packaging issues. Looking close, should have patches
> pretty soon.
>
> This is not attempting Open Babel and its dependencies yet, not sure
> if Geoff has had success there or if Windows is back on an older
> compiler. I remember libxml2 and some of the other Open Babel
> dependencies being difficult, I think you mentioned having used
> prebuilt binaries compiled with older Visual Studio for the C only
> libs.

So, I have it to the point where I can build this on Windows with
Visual Studio 2015. I need to move the submodules forward, but
everything builds and links. So that is great, and some progress. I do
this by typing,

cmake --build . --target avogadroapp --config Release

Pointing Qt5_DIR to the place where Qt5 is installed (within there
lib/cmake/Qt5). The next thing I need to figure out is why the
rendering context does not seem to be getting initialized correctly -
blank only on 64 bit build, and crashing on startup on the 32 bit
build.

--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] VS2015 Build

2016-11-10 Thread Marcus D. Hanwell
On Tue, Nov 8, 2016 at 1:47 PM, Marcus D. Hanwell
<marcus.hanw...@kitware.com> wrote:
> On Wed, Oct 12, 2016 at 10:22 AM, Marcus D. Hanwell
> <marcus.hanw...@kitware.com> wrote:
>> On Sun, Oct 9, 2016 at 5:39 PM, Pavolik, Ethan Thomas <et...@pitt.edu> wrote:
>>> I was wondering if you'd made any progress getting VS2015 up and running on
>>> your machine. I'm still stuck with the previous link errors when trying to
>>> build Avogadro-libs. This week I tried rebuilding QT5 from source and have
>>> been digging through and comparing symbols in relevant .lib files trying to
>>> figure out why they won't link for me, but I haven't been able to make any
>>> progress.
>>>
>> I need to get back to this, I know we have seen a VS2015 issue around
>> jsoncpp in another project. We have also confirmed that PyBind11 needs
>> VS2015 as its minimum version on Windows.
>
> I am working my way through issues on this now, I fixed the spglib
> find call, and am looking at symbol visibility. I want to have all
> this building by the end of the week, hopefully sooner.
>
So I didn't do very much yesterday, but today spotted a few typos. I
have all of AvogadroLibs compiling now, just working on cleaning up
the patch a little. I also have the app compiling, but need to take a
look at the packaging issues. Looking close, should have patches
pretty soon.

This is not attempting Open Babel and its dependencies yet, not sure
if Geoff has had success there or if Windows is back on an older
compiler. I remember libxml2 and some of the other Open Babel
dependencies being difficult, I think you mentioned having used
prebuilt binaries compiled with older Visual Studio for the C only
libs.

--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Chemical JSON Spec

2016-10-20 Thread Marcus D. Hanwell
On Wed, Oct 19, 2016 at 9:20 PM, Geoffrey Hutchison
 wrote:
> I know as part of the GSOC project there were some questions about a more 
> formal spec for CJSON. Considering that I'd like to start adding pieces into 
> Open Babel (and maybe RDKit?) it would be really helpful if there was a more 
> formal write-up.
>
We started the Chemical JSON GitHub repository, and there are a few
people interested in developing a more formalized spec. I would say
that this is a good place to organize a spec,

https://github.com/OpenChemistry/chemicaljson

There is also https://github.com/OpenChemistry/avogadrodata/tree/master/data
that has a number of examples, several of which are used in the unit
tests. There is the original wiki page,
http://wiki.openchemistry.org/Chemical_JSON and I think that should
point to the repository once we have fleshed things out.

If we need to add things then I would favor adding
examples/specifications to the chemicaljson repository, or discussing
them here. It has been pretty informal so far, I am still working on
getting the unit cell stuff to read correctly before I will merge the
GSoC code - hoping to take another look later today, and there was a
fragment suggestion that looked good and I would like to add.

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Avogadro2 Tool Priorities

2016-11-16 Thread Marcus D. Hanwell
The current default is navigate when loading a molecule, and edit when
the molecule is empty. I think that should be preserved, and merging
the toolbars back together with priority ordering is the right way to
go.

On Wed, Nov 16, 2016 at 4:25 PM, Jens  wrote:
>
> I agree. I've always found that somewhat counterintuitive and would 
> definitely prefer navigate to be the default.
>
> Best wishes,
>
> Jens
>
> On 16 November 2016 at 19:47, Patrick Avery  wrote:
>>
>> Sounds reasonable to me! I think I like having navigate as the first tool.
>>
>> On Wed, Nov 16, 2016 at 1:56 PM, Geoffrey Hutchison 
>>  wrote:
>>>
>>> I'm currently doing some user interface clean-up in Avogadro2.
>>>
>>> One thing I want to revisit is tool order/priority. In Avogadro1, the 
>>> default tool was the draw/edit tool, then navigate, etc.
>>>
>>>
>>> Do we want "draw" to be the default or "navigate / view?"
>>>
>>> I'm actually leaning towards switching:
>>> - Navigate (tool 1)
>>> - Draw (tool 2) - becomes active in new document
>>> - Manipulate (tool 3)
>>> - Bond Manipulate (tool 4)
>>> - Select (tool 5)
>>> - Measure (tool 6)
>>> - Align (tool 7)
>>>
>>> The auto-opt tool is actually going to become a command / mode, not a tool.
>>>
>>> Thoughts?
>>>
>>> -Geoff
>>>
>>> --
>>>
>>> ___
>>> Avogadro-devel mailing list
>>> Avogadro-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/avogadro-devel
>>>
>>
>>
>> --
>>
>> ___
>> Avogadro-devel mailing list
>> Avogadro-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/avogadro-devel
>>
>
>
> --
>
> ___
> Avogadro-devel mailing list
> Avogadro-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/avogadro-devel
>

--
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Plugin Repositories & Archives

2016-11-17 Thread Marcus D. Hanwell
Stuck on a plane most of the day traveling back from a conference, but
like Dave said CMake just reuses several libraries and adds a little
API on top. Very limited access to Internet, but I would rather not
make CMake a runtime dependency. If we need to add a new dependency
let's keep it as simple as we can - building dependencies is one of
the biggest pains for packaging/making installers.

On 17 November 2016 at 10:02, David Lonie  wrote:
> CMake just internally includes libarchive, zlib, and libbzip2 here:
>
> https://github.com/Kitware/CMake/tree/master/Utilities
>
> and makes API calls into them as needed. Nothing fancy :)
>
> Dave
>
> On Thu, Nov 17, 2016 at 9:48 AM, Geoffrey Hutchison
>  wrote:
>>
>> > The problem, though, is that it looks like you may have to add cmake as
>> > a runtime dependency with this setup, and I know you may not want to do
>> > that…
>>
>> No, not necessarily. It would be a matter of asking Marcus if he can point
>> us to the CMake code that handles decompression and including that in
>> Avogadro2. :-)
>>
>> Thanks,
>> -Geoff
>>
>>
>>
>> --
>> ___
>> Avogadro-devel mailing list
>> Avogadro-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/avogadro-devel
>
>

--
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Selection tool progress

2016-11-21 Thread Marcus D. Hanwell
On Mon, Nov 21, 2016 at 9:47 AM, Geoffrey Hutchison
 wrote:
>> is much nicer than how we did it before, and it seems like it would be
>> simple to add to CJSON.
>
> I think it's a good idea to add selection to CJSON for a few reasons. One, 
> the concept of "named selections" was in Avo1 but never really used. For 
> example, an enhanced QM (or other) generator could allow you to mark a 
> particular selection as QM/MM or support automatic fragment calculations, etc.
>
> Also, the "run" scripts could mark selected atoms in CJSON, e.g., build a 
> carbon nanotube and then allow the user to move it.

I am totally sold on adding support for it in CJSON, I can see a
number of use cases would clearly benefit.
>
>> I was going to look at adding a selection box next, and deletion of
>> selected atoms. I also need to add undo/redo support, if anyone is
>> interested in the half-working version I can share it on my fork of
>> avogadrolibs,
>
> I'd be happy to help with some of this.
>
What I have has been on my fork since last night, should get back to
some of it later, start cleaning up the branch and rounding out
initial features.

--
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Roadmap for 1.91?

2016-11-20 Thread Marcus D. Hanwell
On Mon, Nov 21, 2016 at 12:01 AM, Geoffrey Hutchison
 wrote:
> You mentioned previously wanting to get out a new release fairly soon (1.91). 
> Do you have a target date? Dec. 1st?
>
I would like to tag 1.90 pretty soon, and then move to C++11/14 being
required. I added a deadline of 30 November for that, and then a 1.91
tentatively at 29 December that I felt was more likely to slip.

> Should we be clear about the roadmap for the release as well as post-1.91 
> release plans?
>
I began adding some issues, and looking at what was possible. I was
hoping basic cleanup for 1.90, happy to tag sooner, but I would really
like to move on soon.

--
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] CJSON format proposal

2016-11-20 Thread Marcus D. Hanwell
On Sun, Nov 20, 2016 at 11:57 AM, Boone, Paul  wrote:
> Can you explain more how BSON fits in here? If CJSON were supposed to be a
> file format for internal interchange, then I have nothing against storing
> coords as one array and then processing them when you read it in or out.

BSON is used by MongoDB, and it is one of the things that motivated
the development of CJSON - it was useful to be able to move to/from
BSON with a fairly compact format, which also matched our in-memory
layout. Frankly I feel like this is all a matter of interpretation,
one array is convenient in a number of settings, and the meaning is
quite clear, tuples within arrays can also be convenient (in C++ you
can have the best or both worlds when using flat arrays cast to Eigen
fixed size vectors for example)

CJSON was quite clearly originally developed out of a need for a
simple format for getting data in and out of Avogadro 2. We wanted
something efficient, based on existing  parsers, that could easily be
extended. It has been developed in an ad-hoc way to satisfy that need,
in the last year or two we have been looking at standardizing the
format for wider use. It has always embedded a key-value pair to allow
for breaking changes, with the ability to retain code to continue
working with legacy data.
>
> For the python interface though, we were going to use CJSON as a public
> interchange format, and for a public interface, I’d be adamant about
> sticking to the principles of (1) readability (i.e. the format making sense
> to somebody just reading the text format) and (2) and explicitness (i.e. the
> structure of the file should represent the underlying data, without needing
> to interpret it in any way). Otherwise, we’re letting our internal
> implementation determine the structure of the format, when we want the
> semantics of the underlying data to determine the format.

I understand what you are saying. I think it is just as readable
whether stored as tuples or a flat array, and don't see any ambiguity.
I guess this is why others have begun using this as an interchange
format in some places, I have used it in C++, Python and JavaScript
without issue.
>
> I specifically wouldn’t worry about space considerations of the sub-arrays,
> but I don’t ever worry about space for JSON since it just wasn’t intended
> for that. Right now I think the biggest CJSON file we’re testing with for
> the python interface is about 117k, which I don’t think of as large. But I
> have no insight into how this format is being used elsewhere… Are you using
> it for really large structures?

There are a few test cases at a few million, in the case of bonds and
BSON your proposed format would nearly double storage for little gain
from my perspective.
>
> So the fundamental question for me that I’m sure you all can provide some
> insight on is:
>
> - are there really two formats here: (1) a format designed for internal use,
> ease of importing / exporting straight to/from avogadro internal structures,
> and optimized for minimal size, likely using BSON and (2) a public format
> designed for readablity and semantic explicitness?
> - or, is the public format sufficient for both purposes?

I would say that for most uses the existing format is useful for
public interchange, you are adamant it is not for your use case. There
are some existing projects that are making use of the current layout
in multiple languages, I would like to continue supporting them at
least in the short term. I think semantic explicitness would likely be
better achieved in a JSON-LD based format mentioned below.

You obviously have strong feelings on what you want the Python
interchange format to look like, and in the short term a good
direction might be to simply develop that, do as you wish, develop the
API you want, and the public interchange format you want, and not
worry about the CJSON format (or use it as a starting point). I think
we can live with some duplication, this seems like a very focused
effort on Python - Avogadro exchange at this point, and you would like
to take advantage of language features between JSON and Python that
seems fair enough.
>
> You also mention some additional changes you were thinking of making. Can
> you tell me about those?
>
There is an NWChem JSON format we have been developing as part of a
collaborative project with Berkeley Lab. That has explored another
layout that uses more objects, and push further into electronic
structure. There was also a workshop at the EPA, and we have been
looking at developing a JSON-LD format that actually has some semantic
meaning. There is also the GSoC project, and I am fixing up a few
remaining warnings, to get electronic structure from cclib into
Avogadro via an extended CJSON representation.

Hopefully this makes my thinking more transparent to you. The Python
integration is not the only user of this exchange format. When I
started working on this it was clear there were a number of ways to

Re: [Avogadro-devel] CMake Error building MoleQueue on OSX 10.9.5

2016-10-12 Thread Marcus D. Hanwell
On Tue, Oct 11, 2016 at 10:44 PM, Geoffrey Hutchison
 wrote:
> I've installed Qt (5.6.0) and Cmake (3.3.1) using anaconda, and followed the
> instructions here:
>
>
> That may be the problem. I've had trouble with anaconda (or homebrew)
> versions of the Qt packages.
>
> I'd highly recommend Mac users go for the binary distribution:
> http://download.qt.io/official_releases/online_installers/qt-unified-mac-x64-online.dmg
>
> It'll ask for an account, but skip that step - it's for commercial Qt
> licenses.
>
> Then, before running cmake (i.e., /path/to/your/Qt/5.6 …)
> export CMAKE_PREFIX_PATH=/Users/ghutchis/Qt/5.6/clang_64/lib/cmake
>
Never used Anaconda, good to know, I didn't know they packaged things
like Qt. I have used homebrew quite successfully, but will look out
for issues. With some of the recent updates you can continue using
CMAKE_PREFIX_PATH, but Qt5 should only need Qt5_DIR to be defined.

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] VS2015 Build

2016-10-12 Thread Marcus D. Hanwell
On Sun, Oct 9, 2016 at 5:39 PM, Pavolik, Ethan Thomas  wrote:
> I was wondering if you'd made any progress getting VS2015 up and running on
> your machine. I'm still stuck with the previous link errors when trying to
> build Avogadro-libs. This week I tried rebuilding QT5 from source and have
> been digging through and comparing symbols in relevant .lib files trying to
> figure out why they won't link for me, but I haven't been able to make any
> progress.
>
I need to get back to this, I know we have seen a VS2015 issue around
jsoncpp in another project. We have also confirmed that PyBind11 needs
VS2015 as its minimum version on Windows.

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Avo2 - Paste & Python Dialogs

2016-10-12 Thread Marcus D. Hanwell
On Wed, Oct 12, 2016 at 11:52 AM, Geoffrey Hutchison
 wrote:
> Hi Marcus,
>
> As I've mentioned before, I'm working with Paul Boone here at Pitt on a new 
> script interface in Avogadro 2. Scripts (not just Python) will have a similar 
> API to the input generators, but will hand back a modified molecule to 
> Avogadro. Eventually, we'll implement a download-from-GitHub feature.
>
> I'm trying to do the least amount of refactoring:
> - Right now it seems like "Paste" doesn't actually modify the molecule - 
> instead, a new one is created. I'd like to adapt the paste command to work 
> like Avogadro v1 -- add more atoms and bonds to the current molecule

Sounds good.
>
> - I still have no idea how the UI for the molecule list is supposed to work. 
> I realize this is a Mac bug, but it seems like there should be a way to 
> "merge" or "split" those entries. However, since the undo stack is maintained 
> by the RWMolecule, I'm unclear on how you would implement undo/redo for those 
> concepts.

I would paste in the molecule being merged in, add that as an undoable
step, but not try to preserve the old undo/redo from the molecule
being merged.
>
> - I'm going to add selection to the RWMolecule and CJSON (i.e., which atoms 
> are currently selected). This will enable "regular paste" by including an 
> append() method with undo/redo support. Selections will also have undo/redo 
> support (i.e., the before and after bit vectors of selected atoms).

Sounds reasonable.
>
> - I'm going to take the InputGeneratorWidget out of avogadrolibs / molequeue 
> and put it into qtgui/ as InterfaceWidget. It will handle both input 
> generators and the new action scripts (i.e., parsing the JSON from the 
> scripts) - I will probably add small subclasses to handle the two different 
> types, e.g., the preview text in the input generators, etc.
>
I would not like to lose all the MoleQueue integration due to a Sierra
build issue, I am sure we can get to the bottom of it. I don't see any
issue refactoring a little, but to be honest, worst case we should
just import the MoleQueue client classes into Avogadro, that would
remove the dependency, and it would keep the functionality. There
would be some code duplication, but that isn't the end of the world.

We still don't have a Sierra machine for me to test that out on,
should hopefully get something soon.

Marcus

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Make Package for Avogadro

2016-10-12 Thread Marcus D. Hanwell
On Wed, Oct 12, 2016 at 1:09 PM, Geoffrey Hutchison
 wrote:
>> Geoff has some custom scripts he runs that are not in the build
>> system, I wasn't able to generate a DMG last time I tried in Avogadro
>> 1, but as Geoff always made the DMG I didn't look into it much more
>> deeply.
>
> On Mac, with v1 I simply run “make install” and then have a script that 
> copies to a DMG. I’m happy to share the DMG template, although it uses a 
> non-free tool called “DMG Canvas” (http://www.araelium.com/dmgcanvas) to 
> install the pictures, etc. That’s the only reason I haven’t shared - it 
> doesn’t seem like a good idea to force people to use that tool.
>
This post was just put up too, needs very recent CMake but the
installer looks good and I think it can all be done with make package.

https://blog.kitware.com/creating-mac-os-x-packages-with-cmake/

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Make Package for Avogadro

2016-10-12 Thread Marcus D. Hanwell
On Tue, Oct 11, 2016 at 4:01 PM, Patrick Avery  wrote:
> Hi there,
>
> I've been working on adding yaehmop features to Avogadro. The work for Dr.
> Jochen Autschbach's class is pretty much complete (they are going to be
> trying it out), and I wanted to package the program on Windows, Mac, and
> Linux. Fortunately, I already know how to do it on Windows.

Windows is the one I know pretty well, and that should work for the most part.
>
> For Linux, after compiling avogadro, you can type "make package" and it will
> create several packages (including a shell script) that can be used to get
> avogadro on your system. Unfortunately, this package does not come with the
> OpenBabel shared libraries, so any action that requires them will fail on a
> system that does not have OpenBabel installed and its resources in the
> $PATH. There isn't some kind of command that will include the OpenBabel
> shared libraries when making the package, is there? I have tried just
> copying the shared object libraries into the directory, and it fixes some
> problems but not all (it doesn't crash saying that it failed to find
> external library functions, but the functions don't exactly work - for
> example, when reading a cif file, it fails and prints that it failed to read
> it).

We never invested any time in getting Linux packaging to work, so I
would be surprised if it worked. We mainly worked with packagers to
try and ensure it was widely packaged.
>
> For Mac (Geoff, you might be able to answer this), you can use the "make
> package" command as well. However, I fear this has the same issue as the
> Linux "make package." I noticed that we have .dmg files that we release for
> Mac builds. How are those created? I assume they include the OpenBabel
> shared libraries and .txt files that are needed for OpenBabel operations.
>
Geoff has some custom scripts he runs that are not in the build
system, I wasn't able to generate a DMG last time I tried in Avogadro
1, but as Geoff always made the DMG I didn't look into it much more
deeply. In Avogadro 2 I got this working within the build system, and
if you turn the flags on it will ensure obabel et al are packaged.

Marcus

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Avo2 - Paste & Python Dialogs

2016-10-12 Thread Marcus D. Hanwell
On Wed, Oct 12, 2016 at 1:21 PM, Geoffrey Hutchison
 wrote:
>>> - I'm going to take the InputGeneratorWidget out of avogadrolibs / 
>>> molequeue and put it into qtgui/ as InterfaceWidget. It will handle both 
>>> input generators and the new action scripts (i.e., parsing the JSON from 
>>> the scripts) - I will probably add small subclasses to handle the two 
>>> different types, e.g., the preview text in the input generators, etc.
>
>> I would not like to lose all the MoleQueue integration due to a Sierra
>> build issue, I am sure we can get to the bottom of it.
>
> That’s not what I’m implying. The InputGeneratorWidget code has no need to 
> live in molequeue - it simply takes some JSON and creates a Qt form. That’s a 
> simple refactor that will be used by the new action scripts. The new class 
> will be called InterfaceWidget (e.g., JSON -> form).

Sounds good, I misunderstood what you meant.
>
> The MoleQueue integration will live - the InputGeneratorDialog (which already 
> is there) will handle the integration as it does now.
>
> I’m not sure whether some widgets will go into the InputGeneratorDialog 
> (e.g., the preview text, etc.) or there will be a new InputGeneratorWidget 
> that’s a subclass of the InterfaceWidget.
>
Sounds good, thanks for clarifying what I wasn't clear on. I should
finally have some decent chunks of time to work on improvements. I
already made a few updates to the CMake code for finding Qt5, and have
been working on getting the CJSON branch from the cclib GSoC to a
place where it can be merged. The unit cell part is failing, but it
looks about ready once I get to the bottom of that.

In another project we have been using PyBind11, and for the most part
is has been really nice. That project was using VS2013, and we found
we needed VS2015 but the Linux and Mac builds seemed very smooth.

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] 1.90 release..

2016-11-29 Thread Marcus D. Hanwell
Geoff,

On Tue, Nov 29, 2016 at 4:04 PM, Geoffrey Hutchison  wrote:
>
> You had mentioned spinning the 1.90 release tomorrow. While I have a few 
> things moving along, they're clearly not ready for 1.90 - I'll target them at 
> mid-December.

Sounds great, the selection code is moving along, locally I have it
rendering a selection box on mouse move too, but need to add code for
finding the planes, and then detecting if primitives are within it as
all of that is deprecated GL 1.x code that was used in Avogadro 1. Is
it worth merging basic selection of individual atoms as a preview do
you think?

I think it would be good to tag a release, make sure binaries work,
and then start just using C++11, and updating the CMake build system a
little. Hopefully that makes sense, I am happy to do a quieter
release, but for those interested make binaries available.

Marcus

--
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Avo2: List of Plugin Repositories

2017-01-12 Thread Marcus D. Hanwell
> On Jan 10, 2017, 11:18 PM -0500, Geoffrey Hutchison
> , wrote:
> I met with Ethan today and he has a working version of the plugin
> downloader.
>
> What’s your thought on a source for the list of repositories? We have the
> avogadro.cc domain - but I’d like to make sure that there’s an easy way
> (e.g., git) to update the list.
>
From my perspective I think we want to make sure it uses SSL, and I
would have thought some sort of static generation would be ideal in
the short to medium term, even long term it could be generated from a
Git repo we control, and pushed to something like GitHub pages (offers
SSL, but not easily with CNAME), or FireBase (it actually offers a
JSON database feature that might prove useful in future, but is great
for deploying static content to).

I have been experimenting with static site generation, and found
Firebase to be nice and it supports custom domains well with SSL
certificates. I think having Git, and the history that comes with it,
would be needed to ensure we can all see and verify the history. I
would like to see signed tags/commits, but using a controlled
repository would be sufficient.

Marcus

--
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


[Avogadro-devel] Avogadro 1.90.0 released

2016-12-05 Thread Marcus D. Hanwell
We are pleased to announce the release of Avogadro 1.90.0, our latest
release as we finish up features for a final Avogadro 2.0 release.
This release has a lot of new work completed over the last year,
including the results of our first Google Summer of Code where two
students worked on projects under the program. The binaries were build
against Qt 5.7.0 (latest Qt at the time of release), an updated Open
Babel, and using Visual Studio 2015 on Windows.

Avogadro 1.90.0 was tagged last week, and the latest binaries can be
downloaded from http://openchemistry.org/downloads/, I made this the
first release on GitHub as the downloads are a lot cleaner from there
- let me know if you have any trouble downloading them
(https://github.com/OpenChemistry/avogadroapp/releases/tag/1.90.0 is
the GitHub page).

I intend to bump the CMake minimum, require C++11, and remove some now
redundant code falling back to Boost when C++11 was not available (and
code that is now in CMake/updates to CMake logic due to improvements
in CMake upstream). I want to make another release either very late
this year or early next year, and I think there is some great stuff
that is just about ready to be merged.

Thanks to everyone who contributed, gave us feedback, and funded our
development work.

--
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] CJSON in Open Babel

2017-01-08 Thread Marcus D. Hanwell
On Sat, Jan 7, 2017 at 2:56 PM, Geoffrey Hutchison
 wrote:
> As we continue to develop the workflow idea, one obvious help would be to 
> integrate CJSON into Open Babel. I'm willing to do some of the work, since 
> there's already other JSON formats (src/formats/json).
>
> I'm curious about multiple coordinate sets and/or conformers. Right now, 
> there don't seem to be examples with multiple coordinate sets, nor docs in 
> the CJSON repository.
>
> Do you have one? (There must be, since there's the animation tool.)
>
The animation tool work was mostly focused on existing trajectories in
xyz format. I have some code on my machine back home that added
support, but I never got around to fixing it up and merging it.

I am out of the country until Friday, and amazingly tired right now
after flying through the night, but can see about getting something
for you. It would be great to flesh this and a few other additions
out, and get some working code - especially if that helps get more
data via Open Babel.

--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Workflow Scripts (for Avo2)

2016-12-28 Thread Marcus D. Hanwell
On Wed, Dec 28, 2016 at 3:04 PM, Gary Kedziora  wrote:

> Have you looked at pymatgen?  It has a lot of useful features for crystal
> structures and some also for molecules as well.
>
> I have been looking at pymatgen, but hadn't thought about it in this
context. We should take another look at it, I think coupled with the
workflows it could be reused with minimal effort.

Thanks,

Marcus
--
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Conda builds?

2017-04-19 Thread Marcus D. Hanwell
On Wed, Apr 19, 2017 at 7:17 AM, Rick Muller  wrote:

> I took the easy way out and just uninstalled numpy and boost from my build
> environment, so that python wasn't autoconfigured by cmake. The build just
> completed successfully. I'll test it out when I get into work this
> afternoon. If all goes well, I'll post the recipe here. It's pretty easy.
>
> I am pleased to hear it worked out, and would appreciate a copy of the
build script. I will see if I can take a look at Conda soon as I would like
to get more familiar with it.

Marcus
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Conda builds?

2017-04-18 Thread Marcus D. Hanwell
On Tue, Apr 18, 2017 at 7:09 AM, Rick Muller  wrote:

> Hi,
>
> Long time user, first time caller ;-). I'm interested in building avogadro
> under conda, but I haven't found any existing projects under the usual
> channels. Has anyone started anything like this with either avogadro or
> avogadro2? Any suggestions for getting started?
>

Welcome, I have been meaning to get more familiar with Conda, but I  am not
aware of any existing  work to build either with it. As I understand it
Conda provides Qt, Open Babel, and several other libraries. If they are in
a common prefix you could pass in CMAKE_PREFIX_PATH (or even a list of
them). I could likely help, and wrote a large portion of the build
system/have built it in many places.

>
> One thing I've had a hard time finding in the documentation is a list of
> all of the cmake variables I have to set. Many of these I can find out by
> having ccmake fail, and then playing around with the variables that it asks
> me to set, but others (openbabel??) I haven't been able to find. Does
> anyone have a well-filled in cmake build.sh file, or a pointer to some
> useful documentation on this?
>
> We try to follow the standard CMake patters, keeping the cache variables
as advanced, with reasonable defaults. There isn't a complete list that I
am aware of, the closest would be
https://github.com/OpenChemistry/openchemistry/blob/master/cmake/External_avogadrolibs.cmake
which uses a variable to pass in paths for third party libraries
(dependencies).


> Thanks for a great project!
>
> Thanks, let us know how it goes.

Marcus
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] PubChem QC in Avogadro

2017-07-25 Thread Marcus D. Hanwell
On Tue, Jul 25, 2017 at 3:34 PM, Geoffrey Hutchison <
geoff.hutchi...@gmail.com> wrote:

> > This sounds great, we can get the optimized structure, and some
> properties, but I don't see mention of orbital data - is that possible at
> this stage? This sounds like a great resource, and something we should
> integrate.
>
> If you have the PubChem CID number, it’s possible to access the
> XZ-compressed raw output file:
> http://pubchemqc.riken.jp/Compound_1_25000/
> 1/1.b3lyp_6-31g(d).log.xz
>
> Ah, that is great,  1 is the PubChem CID repeated in the three
locations? Great resource, thanks for the pointers.

Marcus
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] cannot load PDB into avogadro

2017-06-06 Thread Marcus D. Hanwell
On Tue, Jun 6, 2017 at 12:18 PM, Chitrak Gupta  wrote:

> Dear avogadro users,
>
> I am relatively new to Avogadro. I am facing problem loading PDB file into
> avogadro.
>
> I created a PDB file using the build feature of Avogadro, but when I try
> to load the same file, I am getting the following error:
>
> No matching basis set file found: "filename.pdb"
> HOMO at: -1
>
>
> I have tried loading it from the GUI as well as drag-and-drop, both gives
> the same error. Any clue how to fix this?
>
> Which version of Avogadro are you using? If you can send the file to me
offlist I can take a look at it, and try it locally. I don't recognize the
error.

Thanks,

Marcus
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Working as a programmer on Avagadro

2018-07-15 Thread Marcus D. Hanwell
Hi,

I recently build a fresh tree on Windows using Visual Studio 2017. You can
download the binary Qt package for VS 2015/2017, and just use that to link
to/build against. I can try and write up each step as I do it fresh
tomorrow once I am in front of that machine, but it really didn't take too
long.

You should never have to build Qt, it is a pain to build, and takes quite
some time. I normally use the offline installers that are a little hidden,
but the online installers work fine too,

https://www1.qt.io/offline-installers/

The tricky thing is navigating into the installation to find the correct
Qt5_DIR location as they layer it a little for different compilers. Let me
see if I can find some more concrete details for you tomorrow if no one
else has all the answers to hand.

Thanks,

Marcus

On Sun, 15 Jul 2018 at 15:09, Geoffrey Hutchison 
wrote:

> Dave,
>
> I'm cc'ing the avogadro-devel mailing list as well as Patrick Avery and
> Marcus on this. I'm quite sure you don't need to build Qt for Windows
> before compiling OpenChemistry on Windows, but I don't use Visual Studio.
> (I install a binary version on Mac, which saves loads of time.)
>
> Patrick, Marcus, and anyone else.. Dave would like to contribute to
> Avogadro2 development and has offered to help me with the new force field
> framework. He's building with Visual Studio, but has had some trouble
> getting everything compiled. I had pointed him at
> http://wiki.openchemistry.org/Build but that doesn't cover much.
>
> Yes, the mini project involves simply allowing users to set the two
> tolerances (i.e., making them parameters in the method first, eventually to
> allow a  small dialog for the GUI to set them). No, not terribly complex,
> but a lot of features turn out this way. "Oh, you want X.. okay, I guess
> that makes sense."
>
> Once we get things building for you, I can point you at the new forcefield
> code - I'm hoping you can help with a new type of minimizer that's based on
> concepts from MD. (As in, it uses the gradients as forces, uses the masses
> to compute acceleration and velocities, then heads "downhill".)
>
> Thanks,
> -Geoff
>
>
> On Jul 15, 2018, at 10:37 AM, Dave Wertz 
> wrote:
>
> Geoff:
>
> I am having a lot of trouble getting QT to build.  I keep getting syntax
> and similar errors when I run nmake.  The download I got from the QT
> website has 4 different releases in it.  I have tried two of them and got
> similar errors in both.  I am now testing the hypothesis that the errors
> are in unit tests that aren't needed in the release version.
>
> The build process takes hours so I have had time to look at your mini
> project.  After looking at the code is appears that the code already has
> two default tolerances.  An upper bound called tolerance which is set to
> 0.45 at line 714 and a lower bound of 0.1 used in the if statement at line
> 740.  If I understand you correctly, you want these two tolerances to be
> user settable.  Is my understanding correct?
>
> Thanks,
>
> Dave
>
>
>
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Working as a programmer on Avagadro

2018-07-16 Thread Marcus D. Hanwell
Hi,

I updated http://wiki.openchemistry.org/Build#Building with a little more
detail on my Windows build, locating the Qt5_DIR location from a binary. In
front of the machine if more is needed.

Thanks,

Marcus

On Sun, 15 Jul 2018 at 15:31, Marcus D. Hanwell  wrote:

> Hi,
>
> I recently build a fresh tree on Windows using Visual Studio 2017. You can
> download the binary Qt package for VS 2015/2017, and just use that to link
> to/build against. I can try and write up each step as I do it fresh
> tomorrow once I am in front of that machine, but it really didn't take too
> long.
>
> You should never have to build Qt, it is a pain to build, and takes quite
> some time. I normally use the offline installers that are a little hidden,
> but the online installers work fine too,
>
> https://www1.qt.io/offline-installers/
>
> The tricky thing is navigating into the installation to find the correct
> Qt5_DIR location as they layer it a little for different compilers. Let me
> see if I can find some more concrete details for you tomorrow if no one
> else has all the answers to hand.
>
> Thanks,
>
> Marcus
>
> On Sun, 15 Jul 2018 at 15:09, Geoffrey Hutchison <
> geoff.hutchi...@gmail.com> wrote:
>
>> Dave,
>>
>> I'm cc'ing the avogadro-devel mailing list as well as Patrick Avery and
>> Marcus on this. I'm quite sure you don't need to build Qt for Windows
>> before compiling OpenChemistry on Windows, but I don't use Visual Studio.
>> (I install a binary version on Mac, which saves loads of time.)
>>
>> Patrick, Marcus, and anyone else.. Dave would like to contribute to
>> Avogadro2 development and has offered to help me with the new force field
>> framework. He's building with Visual Studio, but has had some trouble
>> getting everything compiled. I had pointed him at
>> http://wiki.openchemistry.org/Build but that doesn't cover much.
>>
>> Yes, the mini project involves simply allowing users to set the two
>> tolerances (i.e., making them parameters in the method first, eventually to
>> allow a  small dialog for the GUI to set them). No, not terribly complex,
>> but a lot of features turn out this way. "Oh, you want X.. okay, I guess
>> that makes sense."
>>
>> Once we get things building for you, I can point you at the new
>> forcefield code - I'm hoping you can help with a new type of minimizer
>> that's based on concepts from MD. (As in, it uses the gradients as forces,
>> uses the masses to compute acceleration and velocities, then heads
>> "downhill".)
>>
>> Thanks,
>> -Geoff
>>
>>
>> On Jul 15, 2018, at 10:37 AM, Dave Wertz 
>> wrote:
>>
>> Geoff:
>>
>> I am having a lot of trouble getting QT to build.  I keep getting syntax
>> and similar errors when I run nmake.  The download I got from the QT
>> website has 4 different releases in it.  I have tried two of them and got
>> similar errors in both.  I am now testing the hypothesis that the errors
>> are in unit tests that aren't needed in the release version.
>>
>> The build process takes hours so I have had time to look at your mini
>> project.  After looking at the code is appears that the code already has
>> two default tolerances.  An upper bound called tolerance which is set to
>> 0.45 at line 714 and a lower bound of 0.1 used in the if statement at line
>> 740.  If I understand you correctly, you want these two tolerances to be
>> user settable.  Is my understanding correct?
>>
>> Thanks,
>>
>> Dave
>>
>>
>>
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Design for Charges and Force Fields in avogadrolibs

2018-04-25 Thread Marcus D. Hanwell
On Wed, Apr 25, 2018 at 10:51 AM, Geoffrey Hutchison <
geoff.hutchi...@gmail.com> wrote:

> I'm working on an implementation of force field plugins for avogadrolibs
> but I have some conceptual questions on where to put some of the code.
>
> Initially, I'd just put the bits into qtplugins directories, like the
> "workflow" scripts. (Some of the force fields will be in C++ and others can
> be loaded as Python scripts.)
>

I think this is ideal when developing something new.

>
> But I can imagine wanting charges and force field energies in lots of
> places - particularly charges. For example, it would be great to have popup
> menus listing all charge models in multiple places in the UI:
>
> - Properties -> Atom (partial charges in a table)
> - Surfaces -> Electrostatic Potential (partial charges to color the
> surface)
> - Properties -> Dipole Moment (or something like this)
>
> There seems to be a need for these in core classes, or at least qtgui
>
> Thus, I can imagine developing a PythonScriptLoader class that finds
> scripts of different types (generators, workflows, charges, forcefields,
> etc.) and stores them as lists/hashes. Right now, interfacescript.h and
> pythonscript.h live in qtgui.


> Does it make sense for chargemodel.h and/or forcefield.h to live in qtgui
> as well? (This suggests that inputgenerator files should be moved there
> too.)
>

This sounds reasonable, I was thinking about the molequeue library, and I
didn't want to add an extra dependency to Avogadro's GUI stuff. The
MoleQueue client code is in a couple of classes we could pull in, they just
depend on QtCore/QtNetwork. I think defaulting to adding a few new data
structures to the qtgui library would be good, and we could look at whether
any of that would be useful in core later, i.e. so that it is accessible to
file IO, server code, etc.

If we are OK with adding the QtNetwork dependency we could fold in the
MoleQueue integration classes, otherwise we could just ensure the network
code is kept separate from the input generation. I think this is the better
option, it has been a while but I can look at how much work that will be.
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


Re: [Avogadro-devel] Building avogadrolibs "core" only

2018-09-17 Thread Marcus D. Hanwell
On Sun, Sep 16, 2018 at 3:33 PM Geoffrey Hutchison <
geoff.hutchi...@gmail.com> wrote:

> Hi Marcus,
>
> I'm working along on the force field code - and wondering if there's
> documentation on building the "core" parts of avogadrolibs.
>
> I have the sense that you do something like this for the Python interfaces
> - that you build everything except the Qt GUI? This seems like it would be
> a nice approach for the force field calculations - to enable people to use
> a "headless" non-GUI tool to run geometry optimizations in addition to the
> GUI. Also, it would give some ability for the Python notebooks to run force
> field minimizations.
>
> How do you set up a build for "core-only"? Or put another way, how do you
> build the Python components and maybe I can extrapolate that to core +
> forcefield.
>

As Patrick pointed out we have a Dockerfile building core with Python
bindings, and that is what we are using in our server component. We test it
pretty regularly, and we are actively adding relevant API to our RESTful
interface for the server plugin. I have designs on creating a binary wheel
so that we could pip install core at least.

Hope that helps,

Marcus
___
Avogadro-devel mailing list
Avogadro-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/avogadro-devel


<    1   2