Re: [Avogadro-devel] Progress this Week
On Fri, Sep 9, 2016 at 9:28 AM, Geoffrey Hutchisonwrote: > > 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)
On Wed, Oct 5, 2016 at 10:10 PM, Geoffrey Hutchisonwrote: > 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
On Tue, Sep 20, 2016 at 8:38 PM, Pavolik, Ethan Thomaswrote: > 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)
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
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
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
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
On Wed, Oct 19, 2016 at 9:20 PM, Geoffrey Hutchisonwrote: > 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
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, Jenswrote: > > 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
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 Loniewrote: > 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
On Mon, Nov 21, 2016 at 9:47 AM, Geoffrey Hutchisonwrote: >> 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?
On Mon, Nov 21, 2016 at 12:01 AM, Geoffrey Hutchisonwrote: > 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
On Sun, Nov 20, 2016 at 11:57 AM, Boone, Paulwrote: > 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
On Tue, Oct 11, 2016 at 10:44 PM, Geoffrey Hutchisonwrote: > 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
On Sun, Oct 9, 2016 at 5:39 PM, Pavolik, Ethan Thomaswrote: > 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
On Wed, Oct 12, 2016 at 11:52 AM, Geoffrey Hutchisonwrote: > 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
On Wed, Oct 12, 2016 at 1:09 PM, Geoffrey Hutchisonwrote: >> 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
On Tue, Oct 11, 2016 at 4:01 PM, Patrick Averywrote: > 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
On Wed, Oct 12, 2016 at 1:21 PM, Geoffrey Hutchisonwrote: >>> - 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..
Geoff, On Tue, Nov 29, 2016 at 4:04 PM, Geoffrey Hutchisonwrote: > > 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
> 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
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
On Sat, Jan 7, 2017 at 2:56 PM, Geoffrey Hutchisonwrote: > 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)
On Wed, Dec 28, 2016 at 3:04 PM, Gary Kedziorawrote: > 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?
On Wed, Apr 19, 2017 at 7:17 AM, Rick Mullerwrote: > 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?
On Tue, Apr 18, 2017 at 7:09 AM, Rick Mullerwrote: > 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
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
On Tue, Jun 6, 2017 at 12:18 PM, Chitrak Guptawrote: > 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
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
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
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
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