Avogadro Nominated for SourceForge Community Choice AwardsTuesday, June 23. 2009I am very pleased to announce that Avogadro has been nominated as a finalist in the SourceForge community choice awards this year. We are in the "Best Project for Academia" category, and I would like to encourage you to vote for Avogadro. This is a real honour for all of us, and I appreciate all of you who nominated Avogadro. We are all pushing very hard on polishing Avogadro, getting ready for our 1.0 release. It would be absolutely amazing to see Avogadro win this award, so please vote for us. ![]() There are also some other really nice projects in there too, such as Lancelot, ClamAV, phpMyAdmin and RepRap. So please take a few moments to place your vote, and tell your friends! Update: You can vote even without a SourceForge account - just enter your email address and verify your vote.
Posted by Marcus D. Hanwell
in Academia, Avogadro, Chemistry, FOSS, General, Gentoo, GSoC, KDE, Linux
at
23:23
| Comments (0)
| Trackbacks (0)
Vote for AvogadroThursday, May 14. 2009I just got an email from Sourceforge about their community awards. If you are a user, fan or developer please vote for Avogadro in the Best Project for Academia category. They even provided me with a nice graphics to put on the page, you can just click on it to register your vote. ![]() In other news lots of exciting things happening in Avogadro, hopefully I will find some time to blog about them soon!
Posted by Marcus D. Hanwell
in Academia, Avogadro, Chemistry, Gentoo, GSoC, KDE
at
15:25
| Comment (1)
| Trackback (1)
KDE GSoC Sprint Winding DownTuesday, May 12. 2009The KDE GSoC sprint is over, and we have all returned to our respective homes. We lost a couple of people who had early flights on Sunday, I snapped a fairly blurred group shot Saturday evening, outside of the MIT Stata Center. After an intense day of hacking we headed out for food in the middle of a torrential down pour. We had some great Indian food, ice cream and then went candle pin bowling before they closed at midnight. ![]() Sunday morning we got back into hacking pretty early on. We debated the merits of different editors, the role of desktop and internet applications and debugged a few issues with development environments. We also got Dunkin' Donuts coffee and some very tasty burritos. Sunday was cut short by flights, but Jeff very kindly ferried the two groups to the airport for flights at around 6pm and 8pm. As I was in the second group we took the opportunity to walk into Boston from Cambridge and take a look around. As we crossed the river I took the opportunity to take lots of photos and stitch them together into my first panorama. I think it turned out quite well, I am just starting to get familiar with the software. ![]() I spotted a few posts from Chani and Alejandro about the event too. It was great meeting you guys and I hope you all have a great summer of code! Road Trip to CanadaTuesday, March 10. 2009So last weekend Louise and I went on our first big road trip to Canada. Neither of us have been to Canada before, and with Benoit now living in Toronto it seemed like a great opportunity to go and catch up. Back in July 2007 I visited Benoit in Paris during my GSoC where we met for the first time in person. Now, two years on we met for the second time in person and introduced our partners to each other too. ![]() We left at around 4pm on Friday, I think we crossed the border at about 9pm and got almost all the way there before getting lost in Toronto. Our friend's GPS failed us once we crossed the border and Toronto is a pretty big place. I think we finally arrived just before midnight, tired after the long drive. The next day we drove back down to almost the border to check out the Niagara Falls, which we had never seen before. It rained almost the entire day but we still had a really nice day out. As well as checking out Niagara Falls on the Canadian side in the rain, we found some very expensive shops in Niagara on the Lake, I bought some maple syrup and some maple spread (still not quite sure what to do with that). We discovered that if you get bored of the main attraction you can always check out one of the many casinos too.... We decided to forgo the gambling and instead headed back to Toronto. ![]() Once we had dried off a little we all headed out to get some dinner in Toronto's chinatown. We enjoyed some great Vietnamese food and compared notes on moving continents, life in academia, Google Summer of Code and life in general. It is great to still be in touch with many of the people I made friends with during my Google Summer of Code and I hope others get as much out of it as I did. On Sunday we lost an hour to daylight savings time, wish we could stop doing the clock change thing twice a year... We decided to head back as Louise was tired (she is conducting a geek cloning experiment for me). It rained for most of the drive back too, we did another border crossing and got back home at around 7pm. I do not think our carbon footprint is looking great for the weekend but it was great to catch up and see where Benoit is living now. My thanks to Benoit and Irene for being such great hosts. Back to work this week, preparing for a big conference next week. I still love to travel, it was great to avoid the airports for once!
Posted by Marcus D. Hanwell
in Chemistry, General, GSoC, KDE, Photography
at
08:37
| Comments (3)
| Trackbacks (0)
Avogadro, OpenGL and Display BugsMonday, June 23. 2008Before last summer I had never really done any OpenGL programming. Now I feel like I know a reasonable amount but certainly still have a lot to learn. I have an Acer Ferrari laptop with an ATI Radeon X700 discrete graphics card in it. I was using the proprietary driver for a while but it was so unstable it just wasn't worth using. I was hopeful after reading about AMD opening up the specs so that good 3D support can be added to the open source driver. ![]() ![]() I have to say on the whole the 3D support has been getting better and better for the r300 chipset. I cannot enable the desktop effects in KDE 4.1 trunk without losing my OpenGL apps though. As you can see in the above screen shots filled surfaces also do not work. For some reason the colouring of the surface is incorrect, i.e. the colour is never changed. I am running the latest git sources of xorg, the ati drivers, x11-drm, mesa etc, thanks to Donald Berkholz. Avogadro seems hit File r300_render.c function r300Fallback line 360, Software fallback:ctx->RenderMode != GL_RENDER every time too. There is an open bug report that appears to be describing the same situation. I do wonder if it is possible that our OpenGL code could be improved to avoid this bug. I would love any tips on ensuring our OpenGL code is as compatible as possible. The surface rendering works correctly on all other platforms (Linux, Mac, Windows) and with other drivers as far as I know. We also have an open bug report where Avogadro segfaults on Linux systems using the savage driver. This seems to be a consistent problem. I am afraid I do not have the hardware to test further, I have added further debug output to our initialisation routines - Avogadro crashes very early on. Again, any ideas on how I might fix this bug or at least exit gracefully would be great. Backtraces may help to at least see what functions are called before the crash but this might just be a driver bug.
Posted by Marcus D. Hanwell
in Avogadro, Chemistry, GSoC, Linux
at
22:53
| Comments (3)
| Trackbacks (0)
Avogadro and OpenBabel DevelopmentThursday, May 29. 2008I thought I should post a few thoughts on the development of Avogadro and OpenBabel as there seems to be some confusion in replies to some of my posts. Ever since Avogadro began development it has used OpenBabel as its chemical library. OpenBabel provides Avogadro's internal representation of molecules, atoms, bonds, cube data etc. Avogadro has driven the development of some new features in OpenBabel. In return we have been able to leverage many of the existing library functions to rapidly implement new features in Avogadro. OpenBabel isn't just a library for loading and saving chemical file formats. It provides information on the atoms, bond typing, force fields such as UFF to do geometry optimisation and lots of other very useful features. Many of the recent releases of Avogadro (which is still in beta) have been accompanied by a new beta release of OpenBabel due to each project driving the development of the other. I now work on both (but still mainly on Avogadro) as there were bugs I needed to fix in OpenBabel and Geoff got sick of me sending him patches! As Kalzium uses Avogadro to do all of its molecular editing and visualisation this also means that the optional molecular editor depends on new releases of the OpenBabel library. I hope this makes it clearer why Avogadro and Kalzium generally rely upon the latest version of OpenBabel - many times we have implemented new features in OpenBabel for Avogadro but they should also be useful outside of Avogadro. As always I am open to suggestions and feedback on the way we do our development but I would love to hear more feedback on the software I am writing rather than the packaging issues. As a Gentoo developer I do appreciate that packaging is extremely important and so am doing what I can to make packaging as easy as possible too.
Posted by Marcus D. Hanwell
in Avogadro, Chemistry, GSoC, Linux
at
10:48
| Comment (1)
| Trackbacks (0)
The Kalzium Molecular EditorMonday, May 26. 2008Some of you with long memories may recall that I worked on the Kalzium molecular editor for my Google Summer of Code (TM) project last summer. The observant among you may have also noticed that Kalzium in KDE 4.0 featured a molecular viewer. Well the freeze meant that much of my work didn't make it into KDE 4.0. This is the case with many of our current GSoC students (Naomi among them) who are just starting to code as KDE 4.1 is being frozen and released. Since last summer life has been really hectic, the shipment of my household possessions from the UK to the US was delayed significantly by an incompetent shipping company which also proceeded to break many things... This led to me having no Linux system to develop on for quite some time, and then less time to develop due to having to deal with the fallout of a botched delivery. Still, I am very pleased to be able to show off some of my latest work which made it into KDE 4.1 and will be in KDE 4.1 beta1 (due out in a few days). ![]() I was able to expose some of the extra display types I added along with support for drawing and editing molecules. You can also measure distances and angles of the molecule you are looking at and do some geometry optimisation. Given a little more time I would have liked to expose some of the manipulation features but this new six month cycle was so short and my time was constrained anyway. It will make it into 4.2 at least. I am looking forward to seeing the animation support Naomi is working on now and am very happy to be able to mentor her over the summer. I think high quality, open source educatonal programs are very important and hope that this editor will be useful in that role. The Avogadro library and application should hopefully be able to satisfy college students and researchers. With the scripting support and open source nature of the two projects I think they interact very well and complement one another. As always I would love to hear your feedback on the Kalzium changes and the other work we are doing.
Posted by Marcus D. Hanwell
in Avogadro, Chemistry, GSoC, KDE, Linux
at
18:28
| Comments (5)
| Trackbacks (0)
Avogadro 0.8.0 ReleasedFriday, May 23. 2008On Monday we officially released Avogadro 0.8.0. I think this is a great release with many improvements over 0.6.1. We have been working really hard on improving the stability of Avogadro and I hope this shows in this release. There have also been some very nice improvements in speed and lots of new features. ![]() The screen shot above shows an imported Gaussian formatted checkpoint file displaying the HOMO molecular orbital. The import of output from quantum codes and subsequent calculation of MOs is at a very early stage but you should take a look at it in the extensions menu if you are interested. It currently only calculates s, p and d orbitals and can only parse formatted checkpoint files from Gaussian. The goal is to add at least f orbitals and many more quantum codes. ![]() I don't think I ever talked about the new periodic table QGraphicsView that I am very proud of. It allows you to select elements that are not listed in the combobox, shows the colour they will have on screen and is about as compact as I can make it. I have already packaged Avogadro 0.8.0 for Gentoo, we have binaries (Windows, Mac) and source available for download and should hopefully have packages available for Debian and Ubuntu very soon. There were a few features that didn't make it in and a few bug fixes we found just after release. Once we have ironed out a few more bugs and received more feedback we will make a bug fix release. I was amazed to see that Avogadro is currently shooting up the Marcus D. Hanwell in Avogadro, Chemistry, Gentoo, GSoC, KDE at 10:29 | Comments (4) | Trackbacks (0) GSoC: Molecular Animation in KalziumTuesday, April 22. 2008I am very pleased to be able to announce that Naomi Fox's application for a Google Summer of Code (TM) was successful. Some of you may remember that I participated last year as a student and was also lucky enough to attend aKademy. This year I am no longer a student but I am very pleased to be able to participate as a mentor and hopefully pass on some of what I learned last year. I hope you will all join me in welcoming Naomi to our development community. As I moved to the US last year we are actually in the same timezone which will make mentoring easier. It does mean getting to aKademy will be a lot more difficult but may be I can attend the first KDE Americas event. I am really looking forward to working with Naomi over the summer and I think this is a really important set of features still missing in Kalzium. Looking forward to a great summer, my first in Pittsburgh and my first time as a mentor.
Posted by Marcus D. Hanwell
in Avogadro, Chemistry, GSoC, KDE
at
12:26
| Comments (5)
| Trackbacks (0)
Chemistry Visualisation and Tools MeetingThursday, March 20. 2008Last week I was privileged to be invited to speak at a meeting about molecular modelling with a focus on tools, GUIs and visualisation. The meeting was held at the Holiday Inn in Runcorn and the Daresbury Laboratory (England). I wasn't expecting to be back in England quite so soon, having only just returned to Pittsburgh at the end of January. The meeting was a great opportunity to present some of the latest work I and others in the Avogadro and OpenBabel communities have been doing to create tools that enable the building of molecules and structures, as well as their visualisation. It was also a great chance to hear some very interesting talks by the developers of other building tools and some quantum codes. Donald and I were also invited to Daresbury Laboratory to work with some of the CCP1GUI developers. I presented my talk on Avogadro on Wednesday morning and have made the slides available here. Donald gave an introduction to Avogadro, some of the history and the architecture before I gave my presentation. We finished by taking questions while I demonstrated the Avogadro application. I think it was extremely productive. We had many more conversations over dinner and drinks later as well as in a workshop setting on Thursday afternoon. It was great to be able to put a face to a few of the names and discuss current issues more informally in the evening. The talks were all of a very high quality and from a varied list of speakers from other open source projects, some of the free quantum codes as well as commercial products. I have come away from the meeting with a much better appreciation of the needs in the community and I feel that Avogadro is in a great position to fill the apparent void. I am glad that we were able to get surface and orbital support working in Avogadro before the meeting. Right now we only support Guassian cube files but the implementation is general enough that I will be able to add support for further formats. I really think that if we can get enough people collaborating on a common project everyone can get the tool they need to effectively do their research at a much lower investment than could be achieved by working on many separate projects. I met Tristan Youngs, the developer of Aten, who had implemented some really nice features in his molecular builder that is much more focussed on molecular mechanics. It is well worth checking out. As is Zeobuilder which was developed by Toon Verstraelen. They both implement some great features and have strengths in different areas. Of course my dream is to integrate many of these features via Avogadro plugins and have one editor which is capable of being used in a diverse range of applications. It was also great to speak to Mario Valle who is doing some very interesting work in the area of new visualisation methods and supports a large user base of computational chemistry users. There were of course so many other talks but you can look at the schedule yourself and I think the slides of all the talks should be available in the near future. I feel sure that many good things will come out of this meeting and hope to be able to attend similar meetings in the future. I would like to thank Jens once again for hosting the meeting and taking care of everything. I hope to see some patches and/or commits from him in the near future
Posted by Marcus D. Hanwell
in Academia, Avogadro, Chemistry, FOSS, GSoC, Linux
at
19:20
| Comments (0)
| Trackbacks (0)
Avogadro 0.6.1 ReleasedSunday, March 9. 2008I am pleased to announce that I tagged and released Avogadro 0.6.1 yesterday evening. This is a bug fix release which fixes one pretty large bug that slipped through - the OpenGL context was lost if switching between virtual desktops, multiple views etc rendering the OpenGL window useless unless the application was restarted. As such I would encourage anyone running Avogadro 0.6.0 to upgrade to this new version. It also features several smaller bug fixes and feature enhancements. ![]() The screen shot above shows Avogadro 0.6.1 running in a KDE 4 session. One of the small visual tweaks I made was to add a second light source to our default OpenGL scene which really helps to illuminate the other side of the scene. Thanks go out to Albert for his suggestion of adding another light source. Hopefully there are no really big bugs remaining but Avogadro is still in the beta stages of its development. It is rapidly approaching a stable release though and I am very happy with our progress so far. We would love to hear what you think of Avogadro. I had one person question why we always have to use the latest and greatest version of OpenBabel and felt I should offer some explanation. Many of the features exposed in Avogadro use functions and structures in OpenBabel. I myself was quite heavily involved in improving OpenBabel's support for Gaussian cube files and the cube format so that we could load and display orbitals for example. As such we often add new features or fix bugs in OpenBabel trunk and so a new release of OpenBabel must be used in order for everything to work. There are already ebuilds for this latest version in the Gentoo tree. Ubuntu/Debian builds are in the process of being built. We should hopefully have Mac and Windows binaries very soon too. I am headed to a meeting in the UK where Donald and I will be talking with other scientists about visualisation in chemistry and related areas. We will of course be showing off Avogadro as well as talking with many other people working in this area. I am very much looking forward to it and hope that this will lead to further innovation in the Avogadro project as well as the open source chemistry movement in general. It will of course be great to have a full English breakfast and some real ale too!
Posted by Marcus D. Hanwell
in Avogadro, Chemistry, FOSS, Gentoo, GSoC, KDE, Linux
at
15:30
| Comments (8)
| Trackbacks (0)
Avogadro 0.6 ReleasedFriday, February 29. 2008Earlier today we released Avogadro 0.6. This release is quite overdue and we had originally planned to make a release around the new year. This release has many, many new features that have been implemented since the last release. ![]() I am especially proud of the new support for displaying surfaces. This initially led to the surface engine that displays a Van der Waals surface. Tim added the ability to map the electostatic surface potential onto that. I then began work on adding support for displaying orbitals. This led to me getting commit access to OpenBabel and making quite a few commits as I got Gaussian cube loading working. While I was there I couldn't resist improving the Grid classes (still a little more I would like to add in). Another new feature I am really pleased with is the QGraphicsView based periodic table. I think it works very nicely and I am hoping to add this code to Kalzium. I think the Avogadro library is in great shape for me to begin porting Kalzium to use it. Tim and Geoff have been doing some amazing work in OpenBabel on improving the force fields used for geometry optimisations. We have also been doing a lot of work to improve Avogadro's performance when rendering large systems. We have added quickRender functions and OpenGL display lists to improve interactivity as well as threading calculations where this made sense. We have a cool little colour widget Geoff coded too that allows colours to be displayed and picked easily, improved default layout and one of my personal favourites - persistent settings in most of Avogadro. There are certainly some bugs remaining. I would like to get to the bottom of as many as I can and hope to make one or two bug fix releases in the 0.6 branch. We would love to get feedback from people. We have already made a source release and a Mac binary. I will be adding Gentoo ebuilds shortly and we will hopefully get a Windows binary out by early next week. Hope you enjoy this release. I think we are getting close to a stable API that we can call 1.0 and have most of the core features I was hoping to get into Avogadro. Our framework is extremely modular and extensible and I hope that we will be able to build up a community around Avogadro. It was also great to be able to make this release on 29 February - we have so few of them
Posted by Marcus D. Hanwell
in Avogadro, Chemistry, FOSS, GSoC, KDE, Linux
at
22:01
| Comments (3)
| Trackbacks (0)
Avogadro: New Orbital Support and Gaussian Cube FormatTuesday, February 19. 2008So over the weekend I spent quite a lot of time hacking away at OpenBabel working on the Gaussian cube format support I needed to get working in order to be able to visualise electronic orbitals. The initial support was taken from Molekel but contained no error checking and it was not reading in the example cube file I had. Thankfully a colleague pointed out a page with details on the Gaussian cube format and I used this as a basis to get it working in OpenBabel with better error checking and a more resilient tokenisation of the cube points. I made my first few commits to OpenBabel over the weekend and got at least simple Gaussian cube files loading that only contain one cube. More will follow I am sure. ![]() After I got the file loading sorted a few more changes to Avogadro got me my first ever orbitals in Avogadro - the benzene HOMO! I believe the cube file came from the JMol test files. Geoff informed me that chemists for some reason see positive as blue and negative as red. That seemed very strange to me and I had initially put it the other way around. Growing up playing with electronics it seemed to me that positive should be red just as the wires in a circuit have a red positive... Other than that orbitals seemed to be working well and I was very pleased. ![]() Next I started to load up some other cube files I had been given as examples. I thought the above image of the electrostatic potential of CH3Cl looked very nice. When I showed Geoff he also liked it and we wondered if it had been visualised in this way before. I know normally the cube would be mapped onto the Van der Waals surface of a molecule. Anyway I was pleased and also felt more productive as I now have my laptop back up and running and am developing on Gentoo again. It would be great to hear what other people think of this new support. I am already working on various improvements to the code and getting ready for another release of Avogadro!
Posted by Marcus D. Hanwell
in Avogadro, Chemistry, FOSS, GSoC, KDE, Linux
at
21:00
| Comments (6)
| Trackbacks (0)
Avogadro: Surface SupportMonday, February 11. 2008I am pleased to announce that we now have working surface support in Avogadro. We originally began working on support for surfaces around November time when Geoff improved the support in OpenBabel for grids and added some initial code to the Avogadro repository. Quite quickly it became evident that this algorithm did not deal well with data sets containing discrete objects that you wanted to polygonise. I began a search of the available algorithms and came across a very nice guide to the marching cube algorithm with example code. I had a brief look for a C++ implementation and didn't find anything initially, began implementing what was on his page and then came across Zhu3d which is a Qt 4 based program that actually uses an implementation of the algorithms described in the guide and references them. As it is GPL licenced code I imported the relevant class into our repository and began the task of adapting it to fit into our framework. ![]() ![]() With some code from Geoff, more pointers from Geoff, some reading and quite a bit of help from Tim (not sure if he has a web page/blog) we got it working. Since then Tim has actually fixed a big bug in OpenBabel that was causing crashes and done more work on the IsoGen class. The screenshots above show the results of our early work where initially we got points and then lines working. I was very pleased at this stage as it adds a feature that had been missing for quite some time to the Avogadro framework. ![]() ![]() I then got filled triangles added with transparency support, allowing us to visualise the underlying structure of the molecule and map other parameters onto the surface. Tim then added electrostatic charge mapping to the colour of the surface which I hope you agree is already looking very good. There is still quite a bit left to do. I need to move the class into libavogadro and out of the engines, integrate it into our Painter API, implement caching and am thinking of using the Qt Concurrent framework to do intelligent multithreading once Qt 4.4 is released as surface generation is quite slow for big molecules. I also need to link the mesh size to the global quality level and see what other optimisations might be possible. Another big one is adding support for visualising molecular orbitals. Geoff has already done a lot of work on the back end in OpenBabel for this and so hopefully it will not take me long to get it added in. Lots to do but some great progress already. I would love to know what you think. Once we have been able to polish this new feature a little I hope we can get a release out of the door so that more people can test out these new features and let us know what they think, point out bugs and shower us with compliments Note: For some reason the exported graphics shown in this post were not antialiased. They are on screen and I need to look into why they are not when I export graphics in this way.
Posted by Marcus D. Hanwell
in Avogadro, Chemistry, FOSS, GSoC, KDE, Linux
at
11:50
| Comments (5)
| Trackbacks (0)
Avogadro: Just Hit Commit 1000!Saturday, December 15. 2007I just made a few commits using my trusty git svn dcommit (I am still really loving git and it looks like the bug I reported may be fixed in it now too). Then I saw the commit numbers - we just hit commit 1000. Development has really been accelerating recently and I haven't had time to write about as much as I wish I could. Hopefully I will get a chance to take some screenshots and show off some of the latest stuff. I have coded a QGraphicsView based periodic table I am pretty happy with. It is compact, allows elements to be chosen, shows our colour scheme and even displays a little extra information on the selected element. Then there is the ribbon engine which is coming along but needs some loving attention from some bio people. I am very pleased with the new quick rendering stuff we have added. It still has its issues. I had fixed some but some of Benoit's recent commits seem to have reintroduced the cache problem upon engine changes. Tim has added a new hydrogen bond engine which looks great thanks to some stipple line stuff from Geoff. There is some great stuff in the properties dialogs too along with lots of improvements to our force fields. There is certainly lots more for us to do. The biggest thing I still haven't gotten in yet is surface support! I really want to get that sorted as I think it will be both useful and should look great. Along with some extra dialogs for graphics export, POV-Ray rendering etc.
Posted by Marcus D. Hanwell
in Avogadro, Chemistry, FOSS, GSoC, KDE, Linux
at
17:52
| Comments (2)
| Trackbacks (0)
Git, SVN and DevelopmentSunday, December 2. 2007It seems I have read quite a few posts in the last half a year or so on the virtues on decentralised version control and how good git it. Before my laptop died I had installed git and was using it for development. Unfortunately that was pretty short lived due to the failure of my laptop. Now all of my development is taking place on Apple Mac machines using Leopard (I used Tiger for a while too). Recently I built git from source on the laptop I am using and checked out the full Avogadro subversion repository using the following commands. git svn init -t tags -b branches -T trunk https://avogadro.svn.sourceforge.net/svnroot/avogadro Then I went and grabbed a coffee while it imported over 800 commits which is pretty small compared to many of the other repositories I have heard about being imported. It didn't take too long, but I would happily make my git repository available should anyone want a copy. I have found git to be very fast which is absolutely great. There are some things which I have found a little confusing while getting to grips with git and its interaction with the subversion repository. For my day to day work I need very few commands. git svn rebase synchronises with the subversion repository. I really like this way of updating too as it displays the diffs for the commits and the log messages. git commit -a commits all local changes to the local repository. git status shows the current status of the repository, git show shows local changes already committed and git svn dcommit pushes my local changes to the subversion repository. It is this last feature I think I like the most. I can queue up multiple change sets which might actually break Avogadro, giving nice bite size commits as I make progress, but only committing them once I am done and everything is working (at least reasonably well). Then there is the potential for doing this when off line which is also great. One of the most confusing things I found was how to nuke local changes if I didn't want to keep them. Deleting the file and updating doesn't work as it does with subversion. Also revert didn't do what I was after. I finally found git checkout which was not what I was expecting. Issuing the command with no arguments resets the repository to the last committed state. Adding filenames as arguments reverts just those files. Another one I haven't found the answer to is files reappearing that we long since deleted. The avogadro.pro file is the main one left but a set of directories also reappeared. They are not there when checking out using just subversion. If anyone has the answer I would love to know. If I git rm the file the commit to subversion does nothing and it loops round. Other than that I am really happy with git. It can be a little too easy to use the wrong commands and wipe out changes so I am moving quite gingerly at times but I think it is well worth the trade off. A few guides such as this one, this one and of course this have helped me along the way. UPDATE: Just to note that I was using the git 1.5.3 release compiled from source. Avogadro: New Ring & Polygon EnginesMonday, November 26. 2007I recently added a couple of new engines to Avogadro and the screen shot below shows them both. The ring engine finds all the rings of the molecule and draws a transparent plane through the ring. The polygon engine finds atomic centres with three or more atoms bonded and draws a polygon around that atom. This is only done for atoms that are not the common organic types. ![]() I think these are useful engines that have been prompted by user requests. May be not as exciting as the ribbon engine or the surface support we are working on but useful to display certain structures. The ring engine has not been without its problems though as you can probably spot in the image below showing the ring engine rendering a carbon nanotube. ![]() The lighting just flips at certain points - the same happens as you rotate molecules that are using the ring or polygon engine. I guess the lighting is flicking on at certain angles. I would be interested if anyone with more OpenGL knowledge than I might know how I can improve the rendering. Some rings are near white and some of the back rings don't seem to be drawn - that could actually be drawing order though which is always tough to get right. Comments and tips are always welcome. The big challenge right now is getting surface support added in. This is something I think we really need and I would use in my daily work as I am sure many others would. I have been reading up on marching cubes and stuff but would welcome tips in that area too! Avogadro 0.2 Released TodayTuesday, October 23. 2007Today we released Avogadro 0.2 which features many improvements since the 0.1 release. It has lots of the new features I worked on during my Google Summer of Code project along with some great work by other contributors such as the bond centric manipulation tool coded by Shahzad Ali, Ross Braithwaite and James Bunt. Geoffrey Hutchison announced the release earlier today, on what I have been informed is mole day due to the date format used in the US - 10/23 corresponding to the 10^23 of Avogadro's number. So today seemed like an even more fortuitous time to make a release of Avogadro! Today also marked my first commit to the Gentoo repository in quite some time to add this release to Gentoo's ebuild repository. If you have been waiting for me to add/update packages and I haven't gotten around to it due to life being so busy now would be a good time to poke me. I will also hopefully be completing the ribbon support I have already talked about and that should make it into a release soon but wasn't ready for this release. We would love to receive feedback on the latest release of Avogadro. These new features will also make their way into Kalzium in KDE 4.1.
Posted by Marcus D. Hanwell
in FOSS, Gentoo, GSoC, KDE, Linux
at
22:05
| Comments (6)
| Trackbacks (0)
Preliminary "Ribbon" Support in AvogadroMonday, October 22. 2007I term it as "ribbon" because it really isn't a ribbon. I haven't figured out how to calculate the plane the ribbon lies on and right now it is a series of cylinders drawn from point to point. I hope you will agree that it already looks fairly effective and can certainly show the nature of the secondary structure of biological molecules. ![]() There is still a lot to do such as draw the tube in a more efficient manner as a continuous OpenGL construct and draw each residue separately. It would also be good to be able to draw ribbons but this may take a deeper understanding of ribbons and how they are visualised than I have. If there are any biologists out there who want to help me out then tips, or even better patches, would be great fully received Avogadro and POV-Ray ExportSaturday, August 18. 2007I have made some more progress with Avogadro and exporting to POV-Ray. Currently the export is working quite well, but is a more manual process than it will be once I have finished all aspects of its implementation. You can export to POV-Ray, but then need to run POV-Ray yourself on the .pov file created to actually get an image. It is not too much work to add the dialog to call POV-Ray, pass it a few options and display the rendered image. Right now I have the issue that I cannot properly translate between the OpenGL camera matrix and the POV-Ray camera system. If anyone has any experience of doing this I would love to hear about it. I have tried using the direction, up and right keywords but POV-Ray claims my coordinates are not orthogonal, and they are - Benoit double checked they were too. I am probably missing something simple. So right now I can export to POV-Ray but only get one view of the atom which does not follow the view in Avogadro - not ideal but certainly usable. ![]() ![]() The images above show a rendering of 1d66 from the protein data bank thing (I sometimes grab interesting and large example structures from there to test Avogadro and Carsten liked this one). The first image shows it rendered with shadows and the second shows it rendered without shadows. Carsten pointed out that effects such as shadows can serve to confuse students but this can be made a configurable option as shadows also help the mind to visualise the three dimensional structure in my opinion (if used right). There are lots of things that can be tweaked about the way the files are exported as well as the rendered image look and feel. A lot of work has actually gone into getting this working as I have made the painter independent of the paint device being used. This means that the engines can paint to any device where a painter implements the primitives in the virtual base class and I think this will allow Avogadro to scale very well as more features are added.
(Page 1 of 2, totaling 30 entries)
» next page
Competition entry by David Cummins powered by Serendipity v1.0 |
Me![]() Calendar
QuicksearchArchivesCategoriesSyndicate This Blog |
|||||||||||||||||||||||||||||||||||||||||||||||||

