FLUKA GUI Status FLUKA Meeting CERN, 10/7/2006.

Slides:



Advertisements
Similar presentations
In Review JAVA C++ GUIs - Windows Webopedia.com.
Advertisements

Intro to Python Welcome to the Wonderful world of GIS programing!
Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
Web Forms and ASP.NET Programming Right from the Start with Visual Basic.NET 1/e 12.
NetBeans IDE Tal Maoz Na’ama Zahavi.
3D Modelling & Animation
B-1 Appendix B Information System Software Robert Riordan, Carleton University.
The Basic Tools Presented by: Robert E., & Jonathan Chase.
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
Java PAL.  Contains the development kit and the runtime environment ( aka the Java Virtual Machine )  Download Link:
NetBeans IDE Vishnuvardhan.M Dept. of Computer Science - SSBN.
WHAT IS PHP PHP is an HTML-embedded scripting language primarily used for dynamic Web applications.
Python Introduction.
The PHP Story. PHP Story PHP is a programming language. Incorporate(join) sophisticated business logic. Widely used general purpose scripting language.
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
Chapter 2 Build Your First Project A Step-by-Step Approach 2 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta Eaton.
1 Integrated Development Environment Building Your First Project (A Step-By-Step Approach)
Programming Languages: Telling the Computers What to Do Chapter 16.
1 Programming Concepts Module Code : CMV6107 Class Contact Hours: 45 hours (Lecture 15 hours) (Laboratory/Tutorial 30 hours) Module Value: 1 Textbook:
CSCI 224 Introduction to Java Programming. Course Objectives  Learn the Java programming language: Syntax, Idioms Patterns, Styles  Become comfortable.
Introducing NativeScript [Pavel Kolev Software Telerik: a Progress company]
CHAPTER FOUR COMPUTER SOFTWARE.
Python 0 Some material adapted from Upenn cmpe391 slides and other sources.
Introduction to Interactive Media Interactive Media Tools: Software.
Computer Programming 12 Mr. Jean March 19 th, 2013.
Linux Audio Mangler Project Design Presentation Yu Chong Hector Urtubia Tony Zuliani.
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
1 3. Computing System Fundamentals 3.1 Language Translators.
Ch 1. A Python Q&A Session Spring Why do people use Python? Software quality Developer productivity Program portability Support libraries Component.
CERN - IT Department CH-1211 Genève 23 Switzerland t DB Development Tools Benthic SQL Developer Application Express WLCG Service Reliability.
Porto, 4-5 March, 1999 The COST250 Speaker Recognition Reference System H. Melin, A.M. Ariyaeeinia, M. Falcone.
Session 1 Introduction to Java. Objectives Java Simplified / Session 1 / 2 of 32 Explain the history of Java Explain Java in brief List the types of Java.
CS699: Professional Seminar in CS / Professor V. Riabov Keith Armentrout Presentation #3 : Portable GUI in Ada and GtkAda 2005 March 12Keith Armentrout1.
CC111 Lec7 : Visual Basic 1 Visual Basic(1) Lecture 7.
Getting started with Programming using IDE. JAVA JAVA IS A PROGRAMMING LANGUAGE AND A PLATFORM. IT CAN BE USED TO DELIVER AND RUN HIGHLY INTERACTIVE DYNAMIC.
1 Text Reference: Warford. 2 Computer Architecture: The design of those aspects of a computer which are visible to the programmer. Architecture Organization.
Computing System Fundamentals 3.1 Language Translators.
Copyright © Mohamed Nuzrath Java Programming :: Syllabus & Chapters :: Prepared & Presented By :: Mohamed Nuzrath [ Major In Programming ] NCC Programme.
Chapter Three The UNIX Editors.
9-Nov-97Tri-Ada '971 TASH An Alternative to the Windows API TRI-Ada ‘97 Terry J. Westley
TCL TK. Tcl/Tk C functions can become Tcl commands that are invoked interactively Tk = scriptable, portable user interface –Windows, X (Unix), MacOS,
Imagine Creating Software Without a Single Line of Code!
 Programming - the process of creating computer programs.
Introduction Mehdi Einali Advanced Programming in Java 1.
Google Web Toolkit Dynamic web on Java (Script) Jordan Jordanov 6 March 2008.
 Before you continue you should have a basic understanding of the following:  HTML  CSS  JavaScript.
Giulio Eulisse, Northeastern University CHEP’04, Interlaken, 27th Sep - 1st Oct, 2004 CHEP’04 IGUANA Interactive Graphics Project:
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Chapter 13 A & B Programming Languages and the.
Ganga/Dirac Data Management meeting October 2003 Gennady Kuznetsov Production Manager Tools and Ganga (New Architecture)
Google Web Toolkit for Mobile Applications Development INGENUITY AT ITS BEST……………….
Basic Concepts for Python Web Development. What Does Make Python Different Batter Software QA Developer Productivity Advance Program Portability Support.
20-753: Fundamentals of Web Programming Copyright © 1999, Carnegie Mellon. All Rights Reserved. 1 Lecture 15: Java Basics Fundamentals of Web Programming.
Top 5 IDE that Simplifies PHP Development Biztech IT Consultancy Pvt. Ltd. | |
Visual Programming Borland Delphi. Developing Applications Borland Delphi is an object-oriented, visual programming environment to develop 32-bit applications.
1 Programming and problem solving in C, Maxima, and Excel.
Chapter 2 Build Your First Project A Step-by-Step Approach 2 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta Eaton.
Pyragen A PYTHON WRAPPER GENERATOR TO APPLICATION CORE LIBRARIES Fernando PEREIRA, Christian THEIS - HSE/RP EDMS tech note:
GUI Post-Processing Package for Beam-Beam Simulation of Ring Accelerators AYOMIDE ODUNSI JACKSON STATE UNIVERSITY SUPERVISOR: TANAJI SEN Dr. ACCELERATOR.
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
CST 1101 Problem Solving Using Computers
Introduction to Computer CC111
Fedora Project / Red Hat
Microprocessor and Assembly Language
Copyright Justin C. Klein Keane
Do you know this browser?...
FEATURES OF PYTHON.
Basic Concepts of The User Interface
Games Development 2 Tools Programming
Presentation transcript:

FLUKA GUI Status FLUKA Meeting CERN, 10/7/2006

2 Why is UI design important User Interfaces are what allows end users to interact with an application. A good UI will make an application intuitive and easy to use Excellent applications without good UI will be less popular than inferior ones with a good UI

3 What makes a good UI? General: Simple Intuitive Respects the commonly accepted conventions Visually organized Native look Easily install and setup Extensible / Programmable FLUKA: Do not hide the inner functionality Provide a platform for working/analyzing results

4 Language Choice PythonJavaRoot/cintC/C++ Distribution Fedora: Pre-Installed M$ Win: installer, cygwin Linux: package M$ Win: Installer, no-gygwin Linux: package M$ Win: procedure no-cygwin Linux: Pre-installed M$ Win: cygwin, djgpp FlavorsSingleSeveralSingleMany Interpreted  VM  Compiled  VM  Source Portability  Binary Portability  Interactive 

5 What is Python? Python is a scripting language which is: interpreted interactive object-oriented like pseudo code dynamically typed available for many platforms extensible with C-API Free from:

6 Competing GUI toolkits for Python Tkinterdefault GUI toolkit for Python. Good for simple UIs. Portable, wrapper around tk/tcl wxPythonMost popular. Good for complex UIs. Wrapper on Win32, GTK JPythonAccess to the Swing library PyGTKAccess to the well-known GTK toolkit PyQtAccess to the well-known Qt library win32allAccess to MFC from python (MS-Win only) WPYMFC style, both also available for UNIX X11Limited to X Windows. 1 st Choice 2 nd

7 Plotting Engine matplotlibpython 2D plotting library gnuplot-pyPython interface to gnuplot pyROOTPython interface to ROOT

8 Front-end UI – Input file editing Low High Text EditorEditor with syntax highlight pyFlip WYSIWYG (Tony) Card Editor (Vasilis) NASA (Tony) One buttonTVF L e v e l Which One / Many?

9 FLUKA Studio? All-in-one: FLUKA project concept Front-end Input file creation / editing Compilation of executable Debugging Run and progress monitoring Back-end Browsing of output files Processing of scoring files Plots creation Possibility to go through all steps with one button

10 FLUKA Studio Wrapper of standalone applications Tree browser to select application Allow different ways of viewing the same object Input: Filtering Cards Show card links Units: i.e. 20 GeV/c Data validation Import/Export on various formats Process: Run monitoring Debugging Sum up files Plotting: Interface to plot packages Python Libraries: Input file manipulation Processing Plotting Tree Browser Embedded Applications

11 Conclusions UI is important Language Choice: Python Portable Interpreted and Interactive Mature GUI toolkit: 1 st choice: Tkinter 2 nd choice: pyGTK Plotting engine: ? FLUKA Studio: Wrapper of standalone applications Project concept: contains everything Input file editing Run control Post processing Plot generation