Folding Atomata - a 3rd-party protein viewer for F@h

This forum contains information about 3rd party applications which may be of use to those who run the FAH client and one place where you might be able to get help when using one of those apps.

Moderator: Site Moderators

Folding Atomata - a 3rd-party protein viewer for F@h

Postby Jesse_V » Sun Oct 27, 2013 3:48 am

It is my pleasure to release Folding Atomata, a third-party protein viewer for Folding@home. This viewer can connect to local or remote FAHClient instances and view the proteins as your computer is folding them. This allows you to get a more detailed perspective on the molecule that you are working on, and gain additional insight into some of the molecular pieces that you may have not noticed before.

Unlike FAHViewer, you have six degrees of freedom over the camera, allowing you to fly all around and get close in for a more detailed look, or back off for the bigger picture. The protein is animated using available checkpoints, allowing you to see an approximation of how the protein moves and morphs within the timeframe of your workunit. Furthermore, since it's common for a computer to process more than one protein at once, (say on the CPU and on the GPU) Atomata illustrates this by rendering the proteins from all available slots from a running client.
Image
This is the demo protein. Following the CPK coloring scheme, hydrogen atoms are white, carbons are dark gray, nitrogens are blue, oxygen is red, and sulfurs are yellow. These comprise all the elements that are likely to be found in a protein. Notice how the hydrogens are a smaller size compared to the other atoms. In reality, hydrogens are comparatively tiny.
Image

This viewer is likely to draw about as much resources as FAHViewer by default, although it is highly adjustable. I've implemented options that you can use to increase the resolution and fineness of the atoms, giving you a very high-quality rendering. Alternatively, you can slow the animation down to the point where Atomata will use almost no resources at all. The viewer will only render when there's an update, which occurs either when animation happens or the camera moves. This prevents it from consuming excessive resources and significantly slowing the actual folding.


Installation
I'm currently only supporting Linux at the moment, although that may change. I welcome anyone who wishes to help support or provide a port to Windows or OS-X. It should not be a difficult task; this viewer, unlike FAHViewer, has very little dependencies.

I publish to a Personal Package Archive (PPA) which will keep Folding Atomata updated just like any other Linux package, and is the recommended, easiest, and most secure route for installation. It applies to Ubuntu and all derivatives, including Kubuntu, Xubuntu, and Mint. To install, simply run these commands:
  • sudo add-apt-repository ppa:jvictors/gitstable
  • sudo apt-get update
  • sudo apt-get install folding-atomata
For Debian systems, or if you don't want automatic updates:
For all other Linux distributions (Redhat, CentOS, Fedora, Slackware, Arch, LFS, etc) see the Install From Source instructions on the README.


You can launch the viewer from the Menu under Education (it's right next to the other F@h applications) or you can type "FoldingAtomata" in the command-line. If you've installed FAHControl, click Preferences and replace "FAHViewer" with "FoldingAtomata". This will make it a near drop-in replacement for FAHViewer, and it can login to remote clients just the same. The controls are fairly standard: W and S to go forward or backwards, A and D to go left and right, and Q and E to go up and down. The page up and down keys roll the camera. Use the mouse to look around!

For further information, including system requirements, installation details, command-line flags, security, and the meaning behind the name, see the README on GitHub. If you need help, type man FoldingAtomata or use the --help flag. Feel free to offer suggestions and feedback in the comments below. If you encounter a bug, you can post here or open a ticket on GitHub. If you do have a GitHub account, please feel free to Star the repository if you like my work, or fork it if you want to contribute directly.

Enjoy! :D
User avatar
Jesse_V
 
Posts: 2751
Joined: Mon Jul 18, 2011 4:44 am
Location: Logan, Utah, USA

Re: Folding Atomata - a 3rd-party protein viewer for F@h

Postby jimerickson » Sun Oct 27, 2013 5:02 am

a big thank you to Jesse_V!! using the ppa but i starred the repository anyway.
jimerickson
 
Posts: 665
Joined: Tue May 27, 2008 11:56 pm
Location: ames, iowa

Re: Folding Atomata - a 3rd-party protein viewer for F@h

Postby P5-133XL » Sun Oct 27, 2013 7:38 am

Is the long-term plan to replace the FAHViewer?
Image
P5-133XL
Site Moderator
 
Posts: 3990
Joined: Sun Dec 02, 2007 4:36 am
Location: Salem. OR USA

Re: Folding Atomata - a 3rd-party protein viewer for F@h

Postby 7im » Sun Oct 27, 2013 7:47 am

No. The new client provides an API so any 3rd party could write a new alternate viewer or even a new fahcontrol.
Please do not mistake my brevity as dispassion or condescension. I recognize the time you spend reading the forum is time you could use elsewhere, so my short responses save you time. Please do not hesitate to ask for clarification if I was too terse.
User avatar
7im
 
Posts: 13306
Joined: Thu Nov 29, 2007 4:30 pm
Location: Arizona

Re: Folding Atomata - a 3rd-party protein viewer for F@h

Postby ChristianVirtual » Sun Oct 27, 2013 11:26 am

Jesse, thanks for the work. Looks nice. Once I have my current plans for my iPad /iPhone monitor app done I would love to integrate a similar viewer into the iPad app. Maybe on the fly I can help with Mac OS X port too.

Thanks for your contribution !
Image
User avatar
ChristianVirtual
 
Posts: 521
Joined: Tue May 28, 2013 12:14 pm
Location: 日本 東京

Re: Folding Atomata - a 3rd-party protein viewer for F@h

Postby Jesse_V » Sun Oct 27, 2013 2:43 pm

P5-133XL wrote:Is the long-term plan to replace the FAHViewer?

Well, I wouldn't mind if everyone started using this viewer. FAHViewer in my opinion is not as exciting as it could be, and doesn't really give you as much control and detail as it should. Although it is open-source, I found its codebase difficult to work with, so I started from scratch for this.

7im wrote:The new client provides an API so any 3rd party could write a new alternate viewer or even a new fahcontrol.

Yep. I load the data via socket connections to the FAHClient port. The commands "telnet localhost 36330" and then "trajectory 0" will give you a ton of topology and trajectory information for that slot's protein. That's basically what my viewer takes as input.

ChristianVirtual wrote:Jesse, thanks for the work. Looks nice. Once I have my current plans for my iPad /iPhone monitor app done I would love to integrate a similar viewer into the iPad app. Maybe on the fly I can help with Mac OS X port too.

It should not be difficult to port to Objective-C. The OpenGL calls should be exactly the same, so it's just a matter of converting the C++11 code and then writing a GUI wrapper. I think the socket code might also work on iDevices, not sure though. Like I said, feel free to fork the repo. CMake can generate an Xcode project, but it's may not get things linked set up correctly. YMMV. Let me know if you have any questions.
User avatar
Jesse_V
 
Posts: 2751
Joined: Mon Jul 18, 2011 4:44 am
Location: Logan, Utah, USA

Re: Folding Atomata - a 3rd-party protein viewer for F@h

Postby Jesse_V » Fri Nov 01, 2013 6:22 am

I've had one report of a crash during the animation, and I have a good idea as to what's causing it. Had this happened for anyone else?
User avatar
Jesse_V
 
Posts: 2751
Joined: Mon Jul 18, 2011 4:44 am
Location: Logan, Utah, USA


Return to 3rd party contributed software

Who is online

Users browsing this forum: No registered users and 2 guests