SonATA
From setiquest wiki
SonATA is an acronym for "SETI on the ATA." It is a signal processing software system that controls the operation of the ATA, collects data, and performs signal analysis.[1] SonATA does real-time SETI analysis and it replaces the older, hardware-based Prelude system that was previously used. SonATA uses UDP multicast packets as a data bus for moving sampled data into, throughout, and out of the system.
Contents |
Development
Originally SonATA was developed at the SETI Institute using a closed source development model. The SonATA software was written by a large number of people over the past decade. Then Jill's TED wish created setiQuest which utilized an open model.
The open source SonATA code was officially released on March 1st 2011. It uses the GPLv3 license[2] and it is available for download on GitHub.[3]
Documentation
Read the SonATA system documentation to learn how it works:
- Overview
- Seeker (SSE)
- Backend Server
- Telescopes
- Beamformer
- Detector Chain (channelizers and DXs)
- Archiver
- Data Displays
- Database
- Disk
- System Operation
- Packet Programs
- Utilities
Languages
SonATA uses a variety of programming languages. This is how GitHub sums up the SonATA code:[4]
- C
- C++
- Fortran
- Java
- JavaScript
- Matlab
- Objective-C
- Python
- shell script
- Tcl/Tk
- x86 assembly
Note: We suspect the GitHub code summary is not quite correct. For example there is no "R" code in SonATA.
Another code perspective comes from running the program cloc[5]. This report was generated by cloc analyzing the SonATA code cloned from GitHub on March 21, 2011:
-------------------------------------------------------------------------------- Language files blank comment code -------------------------------------------------------------------------------- C++ 656 33310 34430 111473 C 85 13352 18958 60254 C/C++ Header 622 14708 18900 33937 Tcl/Tk 64 1009 1730 14325 Java 62 5321 3869 14066 HTML 41 5201 114 11721 Bourne Shell 96 2559 4408 9065 Javascript 9 684 324 4695 make 87 1089 2445 3244 Assembly 25 161 947 1919 JSP 35 738 1015 1785 ASP.Net 2 656 0 1604 CSS 11 259 228 860 XML 4 175 633 819 C Shell 41 328 430 787 Perl 1 64 131 348 Bourne Again Shell 1 41 113 251 MATLAB 4 25 48 220 Expect 2 48 74 178 m4 1 26 2 162 Python 1 58 55 144 Fortran 77 1 11 60 18 Teamcenter def 1 2 0 5 -------------------------------------------------------------------------------- SUM: 1852 79825 88914 271880 --------------------------------------------------------------------------------
Dependencies
These non-standard software libraries are dependencies needed for building[6][7] SonATA:
- ACE 5.7.8
- expect 5.44.1.15
- fftw3 3.2.1
- gmp 4.3.2
- mpfr 2.4.2
- mysql 5.1.36
- ncurses 5.7
- readline 5.2
- Sun Java 1.6.0
- swig 1.3.31
- tcl 8.5.7
- tk 8.5.8
- xtail 2.1
Requirements
The following is the minimum hardware required[8] to run SonATA:
- OpenSuSE Linux 11.3
- dual core x86 64-bit processor with SSE3
- 4 GB of RAM
See also
- SonATA project Source Code Style Guidelines
- GSoC project to port SonATA to multiple OS distributions
- Hat Creek server room
- Data conduit protocol
References
- ↑ http://setiquest.org/content/introduction
- ↑ http://setiquest.org/content/license
- ↑ https://github.com/setiQuest/SonATA
- ↑ https://github.com/setiQuest/SonATA/graphs/languages
- ↑ http://softlayer.dl.sourceforge.net/project/cloc/cloc/v1.53/cloc-1.53.pl
- ↑ http://setiquest.org/content/sonata-build
- ↑ https://github.com/sigblips/SonATA/blob/1d145ce3016c8fd46851c7350b978735707dfa4e/scripts/create_packages
- ↑ http://setiquest.org/content/sonata-requirements
External links
- http://setiquest.org/content/details-open-source-project
- https://github.com/setiQuest/SonATA (source code)
- http://setiquest.info (ATA observation status and schedule)