Possibility of developing CFD web application to optimize sedimentation tank in WWTP

Size: px
Start display at page:

Download "Possibility of developing CFD web application to optimize sedimentation tank in WWTP"

Transcription

1 Possibility of developing CFD web application to optimize sedimentation tank in WWTP Sifat Munim Tanin Department of Mathematical Science and Technology Master Thesis 60 credits 2014

2 Possibility of developing CFD web application to optimize sedimentation tank in WWTP Master Thesis by Sifat Munim Tanin Norwegian University of Life Sciences Ås, Norway March,

3 Acknowledgements I am immensely grateful to my supervisor, Harsha Chandima Ratnaweera, who has always been forthcoming with his constant support & patience. I am equally thankful to be given the opportunity to finish the master's degree in NMBU. I would also like to express my love & appreciation to my family for their hearty assistance & encouragement whenever it was needed. Sifat Munim Tanin March 2014 Ås, Norway 2

4 Abstract Computational fluid dynamics (CFD) is used to describe temperature, velocity and different fluid properties of different structure by using various numerical methods. It gained a huge popularity in the last few decades. Inadequate knowledge about CFD has become a major barrier for its application in different sector. In this study, it was attempted to present CFD in an easier and more accessible way to WWTP workers. One web platform has been conceptualized to be developed in such a way that it can simulate fluid flow in a sedimentation tank. Different open source tools have been used to build this platform. Django web development framework based on python programming language has been used for running simulation in a web platform. Simple simulation has been run in the web framework to make it applicable for CFD simulation. To run a complex multiphase flow simulation for a sedimentation tank, some open source CFD applications were needed to be integrated in the web platform. Those applications will run in the server machine without any direct contract with the user. The user will only get a simple web interface to run the simulation in different types of sedimentation tank and be able to take decision about the design. 3

5 Contents Page no. Chapter 1: Introduction Motivation Objective of the study Methodology Outline of the paper 4 Chapter 2: Background CFD in web application Application of CFD at sedimentation of WWTP 7 Chapter 3: Technical background Sedimentation tank Optimization of sedimentation tank Web development for CFD Web application and desktop application Open source and Commercial application Open source programming languages Importance of web development framework 15 Chapter 4: Experimental design Python as a programming language Web development in python Web development framework Django Setting up Django in Computer MTV Model Template View Settings.py URL pattern Python Libraries for CFD Numpy Plotly SciPy Matplotlib Setting up NumPy and Matplotlib in Django CFD simulation using Neiver-Stokes equation (cavity flow) Navier-stokes equation The finite difference method Finite difference method in Navier-stokes equation Naiver-stokes equation in Django URL pattern User interface Views.py Developing web application for sedimentation tank Different models for multiphase flow simulation 33 4

6 Simulation by desktop application Web structure for CFD simulation Back-end structure Front-end 40 Chapter 5: The way forward 42 Chapter 6: Result Cavity flow by naiver-stokes equation Simulation for sedimentation tank Architecture of the web application 52 for sedimentation tank Chapter 7: Discussion 53 Chapter 8: Conclusion 56 References 58 5

7 List of figures Page no Figure 1: Django web development framework structure 23 Figure 2: Cartesian grid 26 Figure 3: User interface to input data for cavity flow simulation 31 Figure 4: Processes in Django for simulation 32 Figure 5: Cavity flow in different time steps 45 Figure 6: Volume fraction of the sediment after introducing slope and baffle. 47 Figure 7: Volume fraction of the sediment from the bottom area. 47 Figure 8: Cross section of the volume fraction of sediment using 2 baffles. 48 Figure 9: Login page in the user interface 49 Figure 10: Main workflow page of the user 50 Figure 11: Data input page for new project 51 Figure 12: Structure of the web application for CFD applications 52 6

8 Abbreviations! - Epsilon 2D Two Dimension 3D Three Dimension CAD Computer Aided Design CFD Computational Fluid Dynamics CGI Common Gateway Interface CPU Central Processing Unit CSS Cascading Style Sheet DB - Database HTML HyperText Markup Language HTTP HyperText Transfer Protocol IDE Integrated Development Environment JPEG Joint Photographic Experts Group MTV Model Template View MVC Model View Controller PDE Partial Differential Equation PDF Portable Document Format PHP - PHP: Hypertext Preprocessor PNG Portable Network Graphics RSM Renolds Stress Model SVG Scalable Vector Graphics UI User Interface USB Universal Serial Bus WSGI Web Server Gateway Interface WWTP Wastewater treatment plant WWW World Wide Web 7

9 Chapter 1 Introduction 1.1. Motivation One statistical graph from World Bank shows that the world population has increased more than 1 billion between the years 2005 to 2012 (Population www 2014). With this high rate of population growth, wastewater production is increasing simultaneously. Wastewater purification is now a major challenge for every community. Using sedimentation tank in wastewater treatment plant (WWTP) has practiced from long ago (Shahrokhi et al. 2013). So better solution to optimize hydraulic efficiency in sedimentation tank has become a challenge for different field of studies. Different technologies have been implemented to improve treatment process. Computational fluid dynamics (CFD) has brought forth a new era in industrial design and research. At first this field of study revolved around the areas of high-technology engineering, but with the progression of time and age it has been quickly embraced as a go to method for solving complex problems in engineering sector. Originally it began with the studies of fluid mechanics and heat transfer. But now they are widely associated with other areas such as chemical, civil and environmental engineering (Tu et al. 2007). Due to steady advancement of computational simulation in CFD it is now possible to design better equipment, which in turn results in lesser operating cost. It has also made a considerable impact on environmental pollutant reduction. With this successful achievement in CFD, it is also coming forward with its own ideas to increase the efficiency of sedimentation tank design. Running CFD simulation for different design is helping the engineer to construct a better possible solution for wastewater treatment. In the sedimentation tank CFD can suggest improved design for many practical problems. For example, in many sedimentation tanks dead zone occupies some area, which reduces the sedimentation zone. It causes the efficiency loss in the tank. By using CFD, these zones can be examined and better designs can be proposed. However, CFD experts who have clear knowledge about fluid mechanics and numerical calculation behind the computational process mainly do CFD simulations. It is not as available and understandable to the general people with general expertise. It is also difficult to become an expert in CFD for those are related 1

10 to WWTP and works for the improvement in different section of WWTP. Therefore, it becomes necessary to bring the CFD for WWTP in an easy-to-access and understandable medium. On the other hand, setting up a CFD application in a desktop platform could be difficult for the WWTP experts. Through the innovative development in information technology, web application and services have gained more popularity. To meet the requirement of different people in different sectors, different types of web applications are being developed. Web development for CFD with a better user interface (UI) can run the complicated simulation while keeping the complex numerical calculations behind the scene when it gives output. If any user-friendly platforms, like web browsers work as a client-side platform for running the CFD calculation, it solves the complexity of setting up CFD application in their computer. This could be understandable, easy to use and preferable to WWTP experts. So they can take decisions depending on the result without understanding the internal intricacy. This initiative can expose new possibilities for using complex CFD in design or optimizing the sedimentation tank at WWTP. Developing an open source web application for sedimentation tank design in wastewater treatment can help the WWTP expert more readily. They can access the application for free and can work for further development if needed. Web developers from different area can work with the code and can contribute their productivity easily within a structured framework. It would be easier than developing an application from scratch Objective of the study The main purpose of this study is to make CFD user-friendly, easy to access and more practical to the WWTP specialists with limited competence in CFD and advanced modeling tools. With such a tool, they can evaluate the shortcomings of existing designs and evaluate improvements with simulating various physical changes. The ultimate goal is to find the way for developing a web structure using a popular programming language that can manage and run the numerical calculation of CFD simulation for sedimentation tank. The user can input the primary data to run the simulation in a user-friendly website. The website has the capacity to grab the data from the input form and put it in the appropriate place for logical calculation. Logical 2

11 code in the website will analyze the data and generate a figure explaining the fluid flow and the pressure term. The objective of the study can be stated as follows: Bridge the gap between the complexity of computational fluid dynamics and the WWTP workers by making CFD simulation accessible through web interface. Make a web interface for the sedimentation tank in a way that will hide the CFD complexity from the general user by taking basic inputs and doing most of the computation on the server. Making a computational architecture using different CFD tools, which will run simulation for the sedimentation tank on web server Methodology The methodology of the study can be divided into few different steps. 1. Understand the fluid flow behavior in sedimentation tank and different physical problems during sedimentation process. 2. Choose a programming language o Which is popular to the developers for developing CFD application. o Which could run the CFD application and output the figure of fluid flow pattern understanding the numerical calculation. It could be chosen by reviewing previous works done by the developers. o By examining the necessary plug-ins needed for CFD simulation. o Which have better ground for web development than others. 3. Develop a web application using necessary libraries and plug-ins, which can run the simple CFD simulation and can output the figure depending on the result found. 4. Find a possible way for developing CFD web application, which can run simulation in different structure of the sedimentation tank. The user interface of the web application will be simple and understandable to the user. 3

12 1.4. Outline of the paper The paper has been structured in the following way: Introduction explains why this topic is necessary and the possible achievement. It also explains the objective of the study and how the work has to be done. Chapter 2 contains the background that discusses previous works related to this study. Chapter 3 discusses the technical knowledge about the study and the possible tools for developing web application Chapter 4 discusses about the experiments done during the thesis works. Chapter 5 discusses about the future works needs to be done to complete the web application and possibility of running CFD simulation for the sedimentation tank. Chapter 6 discusses about the result have found from the thesis work. Chapter 7 discusses about the critical analysis of the study. Chapter 8 illustrates concluding remarks of the study. 4

13 Chapter 2 Background 2.1. CFD in web application CFD applications are like a virtual laboratory that has the capability to visualize fluid flow in a medium by running qualitative or quantitative calculations. It gives an indepth flow pattern that is difficult to find out through a traditional experiment. It cannot replace the actual experiment completely because of assuming too many input data and accuracy of choosing proper mathematical model for simulation. But it can reduce the cost of the experiment significantly. Different developer and software companies have tried to develop CFD applications in web platform. Altair has developed a cloud solution of a CFD application named CFDCalc by the help of AcuSolve solver. In this solution, the user can access CFD technology or can take advantage of the framework to build his application. Its target is to solve two types of CFD problem i.e. fluid mixing and thermal cooling. It does not require CFD expertise from the user and can help him save the money required for purchasing necessary software and hardware for simulation. (Altair announces www 2013). In CFDCalc, user need to specify the parameters in a form and the application uses AcuSolve solver to model it, mesh generation and run the simulation to solve the flow problem. It has developed three solution packages i.e. Heat sink calculator, SMX mixer calculator and simple pipe calculator (Calculators to www 2013). Heat sink calculator uses the finite element method to improve the performance of convective and conductive heat transfer. It investigates the temperature and the heat flux for required places. It has the capability of CAD model generation, CFD mesh generation and the visualization of processed CFD data. (Heat Sink www 2013). SMX mixer calculator can simulate the high velocity fluid from different types of inlet such as normal, j-type and t-type inlet configuration. It also uses Hagen- Poiseuille equation to measure the pressure drop in an empty tube (SMX mixer www 2013). 5

14 In the simple pipe calculator, the workflow shows five different steps. It uses python programming language to run the application. It uses different python script to generate the CAD model, mesh file, AcuSolve input file, images, reports and web interface. It uses one shell script to maintain the batch job like AcuConsole automation, AcuSolve and AcuReport. Python script called SimplePipe.py generates CAD file. AcuConsole helps for further modification of the CAD file and mesh input. AcuReport create the.pdf file as a report. (CFDCalc simple www 2013). OpenFOAM introduces an open source CFD software package with different features like chemical reaction, heat transfer, turbulence, and electromagnetics. It has its own meshing tools and a large amount of solvers for different engineering problems. This package now supports only linux operating system (Features of www ). OpenFOAM is developed by C++ and to modify or further development C++ knowledge required (Jasak et al. 2007). Pythonflu is a OpenFOAM API that have the features of OpenFOAM and has developed in python programming language. It shows the same performance as OpenFOAM and allows developer to use pure python classes rather than C++ programming. Pythonflu have some solvers those are similar to OpenFOAM but completely written in python, which show the same OpenFOAM functionality. Another feature of the pythonflu is the SALOME functionality. SALOME is a mesh generation software that can generate the CAD and can output the meshed structure from the CAD file. Pythonflu helps to combine these two application and works as a bridge between them to run the simulation. It is also built for linux platform. (pythonflu www 2010) Dacolt has developed CFD webapp for combustion engine. These web apps are available for both desktop and mobile devices. (Dacolt web www ) Another web-based system for computational fluid dynamics has been developed using OpenFOAM (Sempolinski et al. 2012). For mesh generation it uses python library and for front-end it uses php programming language. Another cloud based CFD simulation software has been developed by engineering.com named Ciespace. To understand the simulation it also developed a 6

15 workflow engine that explains the steps that occur behind the scene. It uses solvers from OpenFOAM. This application does not require any client site platform and can run in normal browser like firefox or crome. (New cloud-based www 2013) CFD application in web platform is not as popular as desktop CFD application. Web applications those are developed for CFD simulation normally run simple simulations. Python programming language is broadly used for developing this kind of application. In desktop application like OpenFOAM, C++ have used for development. But it has a python API for python developer Application of CFD in sedimentation of WWTP Sedimentation is a very common process in the wastewater treatment plant and is being practiced for long time. The main mechanism of the sedimentation tank is to separate the suspended solid from the water by gravitation. It could depend on different factors like climatic condition, flow rate, the structure of the inlet and outlet, structure of the sedimentation tank, method used for the removal of sludge etc. (Kawamura 1991). After a specific time interval, clean water is taken out form the tank for further treatment. The performance of the sedimentation tank is very important for the next treatment process. So many researchers focus on the efficiency of the sedimentation tank. To measure the performance and to improve the design of the sedimentation tank, CFD has practiced with other quality improvement methods. Particles carried by the wastewater into the tank for sedimentation can influence the performance of the tank. A simulation was run considering different particle diameter and volume fraction to understand the interaction between primary and secondary phase and its impact on the efficiency of the sedimentation tank (Tarpagkou & Pantokratoras 2013). Introducing baffle in the sedimentation tank can increase efficiency. A study was done by setting up different number of baffle in the sedimentation tank and studying the consequences (Shahrokhi et al. 2012). Another simulation was done simulation by changing the location of the baffle and studying the efficiency of the sedimentation tank (Shahrokhi et al. 2013). Further advanced work has been done by studying the performance of the sedimentation tank through using transverse and longitudinal baffle (Wills & Davis 1962). 7

16 Temperature variation between the influent and the tank content can influence the direction of the circular current and as a result show impact to the suspended solid concentration (Goula et al. 2008). Studying of Geometries for sedimentation tank and application of CFD in different structure can suggest a cost-effective and better design solution (Stamou 2008). Different models were implemented for sedimentation tank. The k-ε turbulence model equation was implemented to understand the flow pattern of the sedimentation tank (Schamber & Larock 1981). Particle fluid interactions were studied in different perspective (Righetti & Romano 2004). In the primary sedimentation tank the concentration of solid is limited. So one study was done by using a fixed settling and particle velocity (Imam et al. 1983). Momentum and solid concentration equation has been solved for the sedimentation tank by using 2D model (Stamou et al. 1989). For rectangular sedimentation tank, simulation was done for flow field and suspended solid concentration (Wang et al. 2008). Changing different factors those are related to suspended solid formation could do optimization of the sedimentation tank. Another effective way is to use baffle in the proper place. Structure of the sedimentation tank also could be changed for getting more efficiency. 8

17 Chapter - 3 Technical background 3.1. Sedimentation tank In a wastewater treatment plant, sedimentation tank works as a unit. In most cases sedimentation tank is the first treatment process. Sometimes in an industrial wastewater treatment plant, sedimentation tank is used as a second step. In this case screening process works as the first step to remove the large particles. Some wastewater treatment plants have two types of sedimentation tank depending on their functionality, primary and secondary. Primary sedimentation tank is used to remove grit. On the other hand, secondary sedimentation tank remove flocs, which is produced by chemical coagulation process (Rodríguez López et al. 2008). To ensure water quality, sedimentation tank has a vital role in the treatment plant. Flow pattern in a tank influences the performance of the sedimentation process and to understand it & achieve better design, studies have been done over real tank in some studies (Rodríguez López et al. 2008). On the other hand, in a secondary sedimentation tank, different transport mechanisms work simultaneously, which makes it difficult to understand. Depending on the shape, sedimentation tank can be divided into two types namely circular sedimentation tank and rectangular sedimentation tank. In a rectangular sedimentation tank normally inlet have connected in the one end and outlet have installed at the other end. When water reaches to the outlet, large amounts of particle have sediment by gravitational force. However, in a circular sedimentation tank inlet have installed at the bottom of the tank and the outlet have installed at the surface of the tank. A sedimentation tank can be divided into four different zones i.e. inlet zone, settling zone, sludge zone and the outlet zone. Inlet zone Water have distributed with a controlled velocity from the inlet zone. It prevents turbulence flow. Water should be distributed evenly from the inlet zone. Improper distribution could cause short-circuiting. To ensure proper distribution of water inlet 9

18 could be found in different structure. One of it is stilling wall, which is also known as perforated baffle wall. Settling zone Water enters to the settling zone through the inlet zone. Here the velocity of the water needs to low and the even distribution of the water needs to be ensured. This environment helps most of the folks settled down. It controls the water flowing out of the sedimentation tank. Outlet zone It controls how the water have discharged and distributed from the sedimentation tank. It also has a significant role to prevent short-circuiting. It also controls the water level of the sedimentation basin. Normally in a sedimentation tank baffle could be found in the in the outlet zone. Installing baffle prevents clogging and the floating materials entering into the next treatment process. Sludge zone Sludge zone is found in the bottom of the sedimentation tank where velocity is very becomes very low to keep the suspension of the solid. A drain is available in the bottom of the basin to remove the sludge from the sedimentation tank. Sludge has removed by automated equipment in many WWTP. In some cases sludge has removed manually. If WWTP follows manual sludge removal process, sedimentation tank needs to be cleaned twice a year. Pollutants that arrive in a treatment plant mixed with water can vary depending on different situations. They could differ depending on the surroundings (where wastewater generate), climatic condition, population etc. When the snow melts or rainfall occurs, large variety of pollutants (led, zinc, copper, cadmium, chromium, nickel, nutrients, organic compound, de-icing agent) are introduced in the sewer system, which finally reach at the treatment plant (Hvitved-Jacobson & Yousef 1991). Fluid flow in a sedimentation swells up and become more complicated due to such water intrusion. Furthermore, continuous rising of water consumption rate increases pressure on the treatment plant to treat more and faster. To defeat this situation, 10

19 wastewater treatment plant is growing larger from time to time. Optimization of different treatment unit in the plant has also become a major concern Optimization of the sedimentation tank Different physical problem can occur during the sedimentation due to its structure and the flow pattern. Some of the significant problems have been discussed below that are needed to be considered for optimization. Plug flow Plug flow occurs when the velocity of the fluid remains constant in any part of the flow zone. An ideal plug flow is not possible in sedimentation tank. Flow pattern in an inlet area have changed when it comes into to the sedimentation tank (Maus & Uhl 2010). In the output are the flow have changed also. The deviation form the ideal plug flow in the sedimentation tank can explain the efficiency of the sedimentation tank (Maus & Uhl 2010). High deviation causes low efficiency in the sedimentation tank. Because the flow pattern of the sedimentation tank is as close as to the plug flow, particle sedimentation process occur more efficiently. Coagulation/ flocculation process Efficiency of a secondary sedimentation tank depends on the coagulation and the flocculation process. Flocs settling in the sedimentation tank mostly depend on their size, shape and density. Flocs those have low density due to irregular shape cause problems in the settlement. Another significant difficulty could occur in the inlet and the outlet. If the inlet of the tank has sharp bends, it could break the flocs into smaller particles. Flocs could also become small in size if they are discharged from a high level to the water basin. To increase the efficiency of a sedimentation tank, optimum settling should be done in the sedimentation tank. Short-circuiting Short-circuiting occurs in a sedimentation tank when part of the fluids flow higher or lower than a normal flow. In this case a portion of flow reaches the outlet quicker than the other flow part. When it happens, flocs do not get enough time to be settled. Short-circuiting happens mainly because of the geometry of the sedimentation tank. It also happens due to the position of the inlet and outlet. Improper distribution of flow 11

20 also causes short-circuiting. Proper design of the sedimentation tank with an accurate position of inlet and outlet could solve most of these problems. Dead zone Dead zone in sedimentation tank is an area where circulation occurs. It reduces the area for particle sedimentation. Efficiency of the sedimentation tank decreases with the for having dead zone in different paper. It mainly found in the corner of the sedimentation tank. To reduce dead zone different techniques have developed. Using baffle in the sedimentation tank is the most common technique in the to reduce dead zone. Retention time Retention time in a sedimentation tank need to be considered for optimization. Particle should have to get proper time to be settled. By examining the sedimentation tank and the fluid quality, proper retention time need counted. This application can give a far better result from the sedimentation tank. Temperature Temperature also influences the efficiency of the sedimentation tank. With the reduction of the temperature, particle settlement becomes slower. So the retention time need to increase when the temperature becomes low. Doses of the coagulant also need to be changed with temperature. On the other hand, when the temperature reduces flow also reduces and the flocs get enough time to settled Web development for CFD Web application and desktop application Computer software or application is a part of computer system, which helps the users to solve their everyday problem. It can be defined as a package of instructions for the CPU to follow and help the CPU understand our needs. So it works as a bridge between user and the computer. Instructions provided from us to the computer can be divided into two parts. One is operating system and the other is software application or program. Operating system is a bundle of primary instructions those are approximately same in every computer. 12

21 Software or application personalizes the computer for a specific user. It could be different depending on their types, categories, compatibility etc. Some are developed for maintaining the hardware and on the other hand others are developed to fulfilling user s specific needs. If we think about our everyday used software, there are two categories of software seen. One category of application runs in the desktop and is called desktop application. Another categories of application run from the web server are web application. Web applications use their codes or other types of data from server. They might have one platform in the desktop but they access its major logical instruction from the server. Now-a-days web applications are becoming more useful and available to everyone because of its easy accessibility. Desktop applications get all its instructions to analyze data from the personal computer. Now-a-days desktop applications are being developed to solve more complex problems those are not easy to run in the web platform Open source and Commercial application The key feature of the open source application is that it provides source code with application. User or developer has opportunity to change the code depending on his or her interest (Raymond 1999). With this kind of licenses, software have developed in different segments such as operating system, system software, and end user products for example software for writing documents or music software etc. Open source applications are becoming popular more and more each day. For example, if we consider web server, Apache achieved 60% market share in 2005 (von Krogh & Spaeth 2007). As the user get the source code, he could change the code for new hardware and could make the application compatible for different platform. So codes does not loose its usability in the long run. Due to the right to distribute, modify and develop, this application can be shared in the large community. Different people can add new functionality to the application and can share with others. So the application gets its development in time without any effort of the original developer. As it is free, large population of the user make a big market for the product, which attracts other developers to work with it for further improvement. On the other hand, if it is a commercial application and if the program vendor decides not to develop the application for the future platform, the application becomes useless 13

22 to the user and the user needs to find another software for new platform. Consider a large financial organization. They could have different financial software to maintain the workflow. If the software company, which is responsible for the application, but stops working, other software company have no right to access the application. For this reason, different big organizations are becoming interested in open source platform. When a software company develops commercial software they face the pressure of competition with other similar products. To hold the user to the application they face strict deadline. In some cases they cannot get enough time to tune the product before introducing it to the market. Open source applications do not face this kind of problems. It comes to the market when it becomes ready enough for service. So if someone thinks about the existence and future development of his application, he needs to develop it in the open source platform. Otherwise he has to work for it continuously to meet the competition Open source programming languages Open source programming language provides the source code and the compiler for free. It s mainly developed for non-commercial purpose. These languages are released with open source license. There are many open-source programming languages available in the market such as Java, PHP, Python etc. If we consider the popularity of the programming language we can see that, C, the mother language still keeps its popularity in the first position and then comes java, PHP, JavaScript, C++, python (Programming language www 2013). Java has become popular because of its platform independence. That means it has huge acceptance in both desktop and mobile software development (Giacaman & Sinnen 2013). Java codes are run by the java virtual machine. It is not dependent on the architecture of the hardware. It has a big library with different types of classes. PHP is very popular for web application development. It is a server-site scripting language. It means the code runs the server and gives the output from 14

23 the server to the user. It needs a server to run code. It can embed with HTML directly and without any necessity of processing unit. Python is newly developed object oriented programming language. Syntaxes of this language are easier than other programming language. It can run any operating system like windows, mac and linux. It also can run in.net and java virtual machine. If we consider the web development, PHP will come in the first position (Programming language www 2013). But for developing CFD web application, we need to consider the libraries available for numerical calculations. For scientific application development python has been used widely because of its libraries for numerical calculation. As the objective of the study is not to develop application in different platforms like mobile devices, we didn t consider Java for CFD application development Importance of web development framework Web development framework gives a good pathway to developers in web development. When one builds an application from scratch, it is very time consuming and repetitive. But web development framework does that for them. So it has become a beautiful package for the developers rather than a pile of the same works(plekhanova 2009). Key component of a web development framework is the programming language used in the framework for developing application. One programming language could have many frameworks. Software developers use a specific framework depending on their necessity or the kind of assistance expected from it. It reduces coding pressure on the developer. 15

24 Chapter - 4 Experimental Design 4.1. Python as a programming language The uses of high level programming languages for mathematical calculation and numerical analysis are very common to the scientific application developer. In the high level programming languages the instruction architecture have changed from the machine code or assembly languages and need a compiler. Whereas in the low level programming language, the programming code can be converted in the machine code without any use of interpreter or compiler. This kind of languages runs very fast with less memory usage. But the high level programming languages are easier to understand and use. It also has visualization tools and different numerical method that are very important for CFD application development(chudoba et al. 2013). Different high level programming languages i.e. Maple, Matlab, Octave, R and S+ are used in scientific application development. For the open source community python comes with its rich numerical libraries such as NumPy, SciPy etc. (Chudoba et al. 2013). The flexibility of using python scripting language carries more advantages for the developer (Langtangen 2006). It provides the opportunity to define the class by importing the library into the language that makes them more productive in calculation. Object visualization and dynamic control of state changes becomes easier to python developer by using extended attribute called model-view-controller (MVC) design pattern. For those effective benefits python have used as a programming language for development. 4.2.Web development in python Web development in python has become a major issue with increasing amount of interaction between the user and the web. In the early times users could only see the static pages of the websites. They didn t have the capability to generate or modify any contents of the websites. But now-a-days with different functionality of the websites users get the freedom to manage, modify and output their own interest in the web. In a web application web server has a vital role and has changed with time. Previously browsers used to look for a specific static file in the server to display. Now the server follows the instructions given through a specific URL and generates a 16

25 dynamic file, which is then showed by the browser. This has become a common infrastructure for a dynamic website. To generate file with a python code, HTTP server needs to understand the code. Usually the servers are written in C or C++ language so they cannot understand the python code. To make them understand it a common and accepted interface named CGI(Common Gateway Interface) (How to www 2014) is used. Writing CGI script for complex programming and user interface was not so easy. Then came WSGI (Web Server Gateway Interface). If a programmer chooses a framework that supports WSGI, he doesn t need to get contract with it. When the code deploys, it is wrapped by WSGI. The server understands the code and executes it. In this case a web development framework which supports WSGI is necessary Web development framework Web development framework is a collection of code written by a specific programming language that helps the developer write web application with that language. Python have many web development frameworks such as Django, Grok, TerboGear, Web2Py etc. Django was built for quick application development. It doesn t support repeatation of code rather it reuses them. It mainly focuses on doing things automatically without any support from the developer. It has an admin site which makes the database management very easy. Grok also have the philosophy of not repeating code and it gives emphasis on the convention of configuration. It was developed on Zope toolkit technology. Web2Py is like an all-in-one package. The web interface provided by the package supports almost everything including deployment and testing. It can run from a USB drive and installation is not required to execute. It has a web based IDE like IPython notebook. TerboGear has many WSGI components. It has good features to extend application for further development. From the above frameworks Django is quite popular than the others because of its easy-to-use properties. It has a good documentation that attracts everyone to learn. It 17

26 also has WSGI compatibility. So Django have been selected as a framework for python web development Django In early ages, web development was limited only to editing HTML. CGI makes the web dynamic by generating HTML following the programming instruction. But in CGI script developer had to write so many repetitive codes. (Holovaty & Kaplan- Moss). PHP solved this problem but it was weak in security. Then the Django came with the solution for the security issue and repetition was no longer necessary. It follows the MVC design pattern but takes a slightly different approach. Django framework mainly developed on four parts. They are model.py, views.py, urls.py and templates. Models.py controls the database file, views.py controls the business logic, urls.py controls the URL pattern and in the templates folder programmer saves the template files Setting up django in computer For setting up django few tools have been used like easy-install, virtualenv etc. But at first python needs to be installed in the system. Python 2.7 is more compatible with Django rather than newer version like python 3.x. So python 2.7 is installed for this project. Easy install is a python module, which is available in the setuptool package and helps with downloading and installing different python packages. After installing python setuptools for using easy-install script, virtualenv is installed. Virtualenv is a structure, which we can use to separate the python application from the system. So the python stays in its own individual environment, which has its own packages and path. So everything installed in the virtual environment comes from its local path, not from the system. If the setup occurs in the system, there is a chance of clash within different versions. But by using virtual environment we can assign a specific folder to compact all the codes needed for the packages. So the package becomes individually independent. The following is used install virtualenv by easy-install in the terminal. sudo easy_install virtualenv 18

27 Here sudo means super user do. It means this command is running as a super user. In an operating system many commands do not run for a general user. Running code as a super-user solves the problem and executes the code. After installing virtualenv one folder has been made by the virtualenv where django will be installed. For making a folder using virtualenv following command have used. virtualenv - no- site- packages django- sim- final Here --no-site-packages command is used for a specific interest. It restricts copying any python or other module from the system. So both python and django in this folder start from scratch without copying any file. A folder call django-sim-final has been created. This name was chosen without any specific cause. The user can define it by any other name. In this folder another folder have found called bin. Virtual environment needs to be activated from this folder. To activate virtual environment, following command is used. source dijango- sim- final/bin/activate The code just uses the path of the bin folder to activate virtual environment. It may be different depending on the path of the bin folder. It actually runs the root system from the folder rather than the actual root of the computer. By running this code djangosim-fianl will be shown in the left corner under parenthesis. It means system is running from the virtual environment. So now any installation in this packages will happen in this environment. If the user goes to django-sim-final folder he will find bin, include, lib folders. This structure is the same as the root folder of a system. Django has been installed in the virtual environment. For installing Django, sudo command have not used because the folder acts as a root folder. The code used for installing Django: easy_install Django The process done by the easy_install command is as follows: First it goes to the python package index website and look for the package called Django. Then it goes to the Django project site and got the detail about the Django Then it looks for the current version for Django and downloads the zip file. 19

28 After downloading it installs the Django in the virtual current environment. In the bin folder of the virtual environment, django-admin.py file has appeared. By the following startproject command, django-admin.py has made a new project for django. django- admin.py startproject django_sim_final There is no convention for naming the project. It can be named according to the programmer s choice. Project has become ready for development MTV Like MVC pattern Django has its own design pattern called MTV design pattern. The main interest for the MVC and the MTV pattern is same. The principle of the MTV(Model, Template and View) design pattern is to separate the data access logic, business logic and presentation logic. Another important topic is URL pattern. These four types of codes are written in four separate files. The advantage of having four separate files is significant. When the programmer needs to change one part of the codes he can just change a single file (Holovaty & Kaplan-Moss 2009). He doesn t need to search the whole code to find what needs to change. Suppose the programmer needs to change the template of the website. He can go to the template folder directly without thinking about other files. On the other hand, if he wants to change the database structure of the application he just go to the model.py file for database management. Its saves a lot of time for the programmer and the coding becomes clear and understandable to others Model Model is a specific bunch of code written for database management. It could be found in the model.py file. Naming it model.py is not necessary but proper connection with other files is important. The model structure is also called data access layer. Many web applications access data from the database for visualizing output. In a database driven website, it connect to the database, takes the required data, shows the data to the website and stops the connection with the database (Holovaty & Kaplan-Moss 2009). For the primary development of CFD web application it is not necessary for the simulation to make the database. So data access layer is not used in the application. 20

29 Template Template contains the presentation of the web application. Previously the code was written in the python code. But now Django has separated it. Web design and development are two totally different disciplines. The web designers mainly do template design by changing HTML or CSS code. Now by separating templates from raw python code it becomes easier for the web designer to change the look and fill of the website without understanding python code. On the other hand, in the development environment both the application developer and the designer need to work simultaneously. If the codes are written the same place, they might cause conflict because the web developer and the designer could change same file at the same time. In this application HTML and CSS have used for template design. HTML Programmers are using HTML coding from long ago. HTML stands for hypertext mark-up language. HTML files have the extension of.html or.htm. This extension does not need to be changed to use in Django. HTML files normally have two parts. One part lies under title tag and another under body tag. The part under body tag is the main part in the html file. General convention is to make a templates folder in the projects and let Django know its position of the templates folder by inserting the path in the settings.py file. CSS CSS stands for Cascading Style Sheet. Main objective of the CSS coding is to change the layout of the webpage with less effort. It means that it uses lesser codes for specific output, which loads the webpage faster. It stops doing repetitive works. Changing a single line in the CSS file can change the whole webpage with similar types of structure. To attach CSS characteristics with HTML, it makes class or ID. By calling CSS class or id in a single tag, the tag gets the specific characteristics defined by CSS class or id. 21

30 View View part of Django, which is the business logic part, can be found in the views.py file. Normally, different methods for web application are defined in this part. In the view file functions return the HttpResponse which generates the.html file Settings.py Settings.py file in Django is a very important file. It contains all the configuration of the Django framework. As it has all the sensitive information like database password, it should be secured. So the permission should be limited for this file. It also has another important part for web application, which is TEMPLATE_DIR. It shows the path of the templates for websites. When it needs to find a template, it looks for the.html file in this path URL pattern The entire URL for the web application has defined in a variable called urlpattern that is available in a file named urls.py. In the urlpattern, URL is defined in the urlpattern by giving the URL first and name of the function that is needed for the URL in the second position. Functions are called from views.py file. There are some roles for specifying URL. By these roles, programmer can make dynamic URL where one URL works for same type of many webpages only by changing the value. The URL generated pages will be different depending on the dynamic urlpattern. 22

31 http GET/POST http response http request handler urls.py Determine by Specific function from views.py Render HTML database models This dotted part did not applied for simulation views.py Business logic template Figure 1: Django web development framework structure 4.4.Python Libraries for CFD For CFD simulation two types of libraries are needed. One is for numerical calculation and the other for plotting the result and visualizing the image. Different types of libraries are available for python. For example Matplotlib, NumPy, Plotly, SciPy etc NumPy NumPy was developed for doing numerical calculation by python. There are mainly two fundamental objects in NumPy. One is n-functional array and another is universal function. N-dimensional is a very significant feature for CFD simulation. It is a collection of similar items indexed by N integer. Arrays have two main parts. One is the shape of the array, which indicates to the point where the index could vary. Other is the characteristics of every individual objects because they are same type of dataset and occupies same block of memory (Oliphant 2006). 23

32 Plotly Plotly is a tool for data analysis and visualization. It supports most of the data format. By using custom function over data, output can be attained. It is possible to import another python package like numpy, SciPy etc in Plotly. The output could be exported at different file format like PNG, SVG, PDF and EPS. To adjust the output layout, the user have full control over it. It works with python through API. It could raise complexity for Django and it is not designed for complex data analysis SciPy SciPy is a stack of packages for scientific computing. It contains different packages like NumPy, matplotlib, IPython etc and also contains its own library. Its main interest is to fulfill the scientific need by using python. The use of SciPy is normally shown in IPython. By installing, it could be used in any development environment Matplotlib Matplotlib is a 2D plotting library and have similar functionality like MATLAB. It can be used in python script, ipython shell, web application server etc. By using matplotlib plotting has become easy. It needs just a few lines of codes. Matplotlib follows the object oriented programming style and is compatible with large application development. Most programmers use command line interface, which provides a pop up window for displaying plotted data. Matplotlib mainly have three different parts (Barrett et al. 2005). Matplotlib interface A command line interface of a set of functions for plotting. The frontends or Matplotlib api A set of classes that manages figure, line, plots etc. as output. The backends It transports the frontend output to hardcopy like PNG, JPEG, PDF or SVG format. In case of some complex rendering, code is written in C/C++ for getting better output. For visualizing output from CFD numerical calculation Matplotlib is used in Django. 24

Slides from INF3331 lectures - web programming in Python

Slides from INF3331 lectures - web programming in Python Slides from INF3331 lectures - web programming in Python Joakim Sundnes & Hans Petter Langtangen Dept. of Informatics, Univ. of Oslo & Simula Research Laboratory October 2013 Programming web applications

More information

Web Application Frameworks. Robert M. Dondero, Ph.D. Princeton University

Web Application Frameworks. Robert M. Dondero, Ph.D. Princeton University Web Application Frameworks Robert M. Dondero, Ph.D. Princeton University 1 Objectives You will learn about: The Django web app framework Other MVC web app frameworks (briefly) Other web app frameworks

More information

Nupic Web Application development

Nupic Web Application development Nupic Web Application development Contents Focus in... 1 Why to build a Web Application?... 1 The common data flow schema... 1 Tools... 2 Preparations... 2 Download/Install Django... 2 Check if Django

More information

Availability of the Program A free version is available of each (see individual programs for links).

Availability of the Program A free version is available of each (see individual programs for links). Choosing a Programming Platform Diane Hobenshield Tepylo, Lisa Floyd, and Steve Floyd (Computer Science and Mathematics teachers) The Tasks Working Group had many questions and concerns about choosing

More information

OPTIMISE TANK DESIGN USING CFD. Lisa Brown. Parsons Brinckerhoff

OPTIMISE TANK DESIGN USING CFD. Lisa Brown. Parsons Brinckerhoff OPTIMISE TANK DESIGN USING CFD Paper Presented by: Lisa Brown Authors: Lisa Brown, General Manager, Franz Jacobsen, Senior Water Engineer, Parsons Brinckerhoff 72 nd Annual Water Industry Engineers and

More information

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence Web Development Owen Sacco ICS2205/ICS2230 Web Intelligence Brief Course Overview An introduction to Web development Server-side Scripting Web Servers PHP Client-side Scripting HTML & CSS JavaScript &

More information

ME6130 An introduction to CFD 1-1

ME6130 An introduction to CFD 1-1 ME6130 An introduction to CFD 1-1 What is CFD? Computational fluid dynamics (CFD) is the science of predicting fluid flow, heat and mass transfer, chemical reactions, and related phenomena by solving numerically

More information

High Level Design Distributed Network Traffic Controller

High Level Design Distributed Network Traffic Controller High Level Design Distributed Network Traffic Controller Revision Number: 1.0 Last date of revision: 2/2/05 22c:198 Johnson, Chadwick Hugh Change Record Revision Date Author Changes 1 Contents 1. Introduction

More information

How is EnSight Uniquely Suited to FLOW-3D Data?

How is EnSight Uniquely Suited to FLOW-3D Data? How is EnSight Uniquely Suited to FLOW-3D Data? July 5, 2011 figure 1. FLOW-3D model of Dam visualized with EnSight If you would like to know how CEI s EnSight offers you more power than other postprocessors

More information

Electronic Ticket and Check-in System for Indico Conferences

Electronic Ticket and Check-in System for Indico Conferences Electronic Ticket and Check-in System for Indico Conferences September 2013 Author: Bernard Kolobara Supervisor: Jose Benito Gonzalez Lopez CERN openlab Summer Student Report 2013 Project Specification

More information

Curl Building RIA Beyond AJAX

Curl Building RIA Beyond AJAX Rich Internet Applications for the Enterprise The Web has brought about an unprecedented level of connectivity and has put more data at our fingertips than ever before, transforming how we access information

More information

JavaFX Session Agenda

JavaFX Session Agenda JavaFX Session Agenda 1 Introduction RIA, JavaFX and why JavaFX 2 JavaFX Architecture and Framework 3 Getting Started with JavaFX 4 Examples for Layout, Control, FXML etc Current day users expect web user

More information

Drupal CMS for marketing sites

Drupal CMS for marketing sites Drupal CMS for marketing sites Intro Sample sites: End to End flow Folder Structure Project setup Content Folder Data Store (Drupal CMS) Importing/Exporting Content Database Migrations Backend Config Unit

More information

CFD SIMULATION OF SDHW STORAGE TANK WITH AND WITHOUT HEATER

CFD SIMULATION OF SDHW STORAGE TANK WITH AND WITHOUT HEATER International Journal of Advancements in Research & Technology, Volume 1, Issue2, July-2012 1 CFD SIMULATION OF SDHW STORAGE TANK WITH AND WITHOUT HEATER ABSTRACT (1) Mr. Mainak Bhaumik M.E. (Thermal Engg.)

More information

Express Introductory Training in ANSYS Fluent Lecture 1 Introduction to the CFD Methodology

Express Introductory Training in ANSYS Fluent Lecture 1 Introduction to the CFD Methodology Express Introductory Training in ANSYS Fluent Lecture 1 Introduction to the CFD Methodology Dimitrios Sofialidis Technical Manager, SimTec Ltd. Mechanical Engineer, PhD PRACE Autumn School 2013 - Industry

More information

Open Source Content Management System for content development: a comparative study

Open Source Content Management System for content development: a comparative study Open Source Content Management System for content development: a comparative study D. P. Tripathi Assistant Librarian Biju Patnaik Central Library NIT Rourkela dptnitrkl@gmail.com Designing dynamic and

More information

The Mantid Project. The challenges of delivering flexible HPC for novice end users. Nicholas Draper SOS18

The Mantid Project. The challenges of delivering flexible HPC for novice end users. Nicholas Draper SOS18 The Mantid Project The challenges of delivering flexible HPC for novice end users Nicholas Draper SOS18 What Is Mantid A framework that supports high-performance computing and visualisation of scientific

More information

SOA, case Google. Faculty of technology management 07.12.2009 Information Technology Service Oriented Communications CT30A8901.

SOA, case Google. Faculty of technology management 07.12.2009 Information Technology Service Oriented Communications CT30A8901. Faculty of technology management 07.12.2009 Information Technology Service Oriented Communications CT30A8901 SOA, case Google Written by: Sampo Syrjäläinen, 0337918 Jukka Hilvonen, 0337840 1 Contents 1.

More information

BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME

BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME BEST WEB PROGRAMMING LANGUAGES TO LEARN ON YOUR OWN TIME System Analysis and Design S.Mohammad Taheri S.Hamed Moghimi Fall 92 1 CHOOSE A PROGRAMMING LANGUAGE FOR THE PROJECT 2 CHOOSE A PROGRAMMING LANGUAGE

More information

Web Cloud Architecture

Web Cloud Architecture Web Cloud Architecture Introduction to Software Architecture Jay Urbain, Ph.D. urbain@msoe.edu Credits: Ganesh Prasad, Rajat Taneja, Vikrant Todankar, How to Build Application Front-ends in a Service-Oriented

More information

Customer Training Material. Lecture 2. Introduction to. Methodology ANSYS FLUENT. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved.

Customer Training Material. Lecture 2. Introduction to. Methodology ANSYS FLUENT. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved. Lecture 2 Introduction to CFD Methodology Introduction to ANSYS FLUENT L2-1 What is CFD? Computational Fluid Dynamics (CFD) is the science of predicting fluid flow, heat and mass transfer, chemical reactions,

More information

4 Understanding. Web Applications IN THIS CHAPTER. 4.1 Understand Web page development. 4.2 Understand Microsoft ASP.NET Web application development

4 Understanding. Web Applications IN THIS CHAPTER. 4.1 Understand Web page development. 4.2 Understand Microsoft ASP.NET Web application development 4 Understanding Web Applications IN THIS CHAPTER 4.1 Understand Web page development 4.2 Understand Microsoft ASP.NET Web application development 4.3 Understand Web hosting 4.4 Understand Web services

More information

Rapid Website Deployment With Django, Heroku & New Relic

Rapid Website Deployment With Django, Heroku & New Relic TUTORIAL Rapid Website Deployment With Django, Heroku & New Relic by David Sale Contents Introduction 3 Create Your Website 4 Defining the Model 6 Our Views 7 Templates 7 URLs 9 Deploying to Heroku 10

More information

The Piping System Model a New Life Cycle Document. Elements of the Piping System Model

The Piping System Model a New Life Cycle Document. Elements of the Piping System Model Piping System Model as a Life Cycle Document White Paper Introduction When designing piping systems, a variety of documents are created providing the details necessary to design, purchase, build, and test

More information

locuz.com HPC App Portal V2.0 DATASHEET

locuz.com HPC App Portal V2.0 DATASHEET locuz.com HPC App Portal V2.0 DATASHEET Ganana HPC App Portal makes it easier for users to run HPC applications without programming and for administrators to better manage their clusters. The web-based

More information

Beyond Responsive Design (for Online Retailers): Delivering Custom Mobile Experiences for Multiple Touch Points

Beyond Responsive Design (for Online Retailers): Delivering Custom Mobile Experiences for Multiple Touch Points Beyond Responsive Design (for Online Retailers): Delivering Custom Mobile Experiences for Multiple Touch Points When the Internet first started to become popular and widespread, webpage design was a relatively

More information

ASP.NET: THE NEW PARADIGM FOR WEB APPLICATION DEVELOPMENT

ASP.NET: THE NEW PARADIGM FOR WEB APPLICATION DEVELOPMENT ASP.NET: THE NEW PARADIGM FOR WEB APPLICATION DEVELOPMENT Dr. Mike Morrison, University of Wisconsin-Eau Claire, morriscm@uwec.edu Dr. Joline Morrison, University of Wisconsin-Eau Claire, morrisjp@uwec.edu

More information

A Tool for Evaluation and Optimization of Web Application Performance

A Tool for Evaluation and Optimization of Web Application Performance A Tool for Evaluation and Optimization of Web Application Performance Tomáš Černý 1 cernyto3@fel.cvut.cz Michael J. Donahoo 2 jeff_donahoo@baylor.edu Abstract: One of the main goals of web application

More information

Yusof Al-Wadei Page 1 of 9. Interactive Web Design through Survey and Adoption of Modern Web-Technologies Yusof Hussein Al-Wadei

Yusof Al-Wadei Page 1 of 9. Interactive Web Design through Survey and Adoption of Modern Web-Technologies Yusof Hussein Al-Wadei Page 1 of 9 Interactive Web Design through Survey and Adoption of Modern Web-Technologies Yusof Hussein Al-Wadei Page 2 of 9 ABSTRACT Technologies used in modern web development are continuously being

More information

Integrating Online Banking and Top-up Card into Payment Gateway

Integrating Online Banking and Top-up Card into Payment Gateway Internship Report Master of Software Engineering (2012-2014) Integrating Online Banking and Top-up Card into Payment Gateway Author: DAO Nguyen Vu Supervisor: HO Hoang Thuong January 11, 2015 Acknowledgment

More information

IT3504: Web Development Techniques (Optional)

IT3504: Web Development Techniques (Optional) INTRODUCTION : Web Development Techniques (Optional) This is one of the three optional courses designed for Semester 3 of the Bachelor of Information Technology Degree program. This course on web development

More information

Visualization of Semantic Windows with SciDB Integration

Visualization of Semantic Windows with SciDB Integration Visualization of Semantic Windows with SciDB Integration Hasan Tuna Icingir Department of Computer Science Brown University Providence, RI 02912 hti@cs.brown.edu February 6, 2013 Abstract Interactive Data

More information

imaginit.com/autodeskcfd Scalable, robust fluid flow and thermal simulation solution

imaginit.com/autodeskcfd Scalable, robust fluid flow and thermal simulation solution Scalable, robust fluid flow and thermal simulation solution Fast, accurate, and flexible solution to test the fluid flow and thermal performance of your design Accurately predict behavior, optimize designs,

More information

Design and Functional Specification

Design and Functional Specification 2010 Design and Functional Specification Corpus eready Solutions pvt. Ltd. 3/17/2010 1. Introduction 1.1 Purpose This document records functional specifications for Science Technology English Math (STEM)

More information

Lesson Overview. Getting Started. The Internet WWW

Lesson Overview. Getting Started. The Internet WWW Lesson Overview Getting Started Learning Web Design: Chapter 1 and Chapter 2 What is the Internet? History of the Internet Anatomy of a Web Page What is the Web Made Of? Careers in Web Development Web-Related

More information

Native, Hybrid or Mobile Web Application Development

Native, Hybrid or Mobile Web Application Development Native, Hybrid or Mobile Web Application Development Learn more about the three approaches to mobile application development and the pros and cons of each method. White Paper Develop a Mobile Application

More information

Real-Time Analytics on Large Datasets: Predictive Models for Online Targeted Advertising

Real-Time Analytics on Large Datasets: Predictive Models for Online Targeted Advertising Real-Time Analytics on Large Datasets: Predictive Models for Online Targeted Advertising Open Data Partners and AdReady April 2012 1 Executive Summary AdReady is working to develop and deploy sophisticated

More information

PROJECT MANAGEMENT SYSTEM

PROJECT MANAGEMENT SYSTEM Requirement Analysis Document v.2 14.12.2009 CENG-401 SOFTWARE ENGINEER PROJECT MANAGEMENT SYSTEM (Project Manager) Ahmet Edip SEÇKİN 07010555 (Developer) Erhan ŞEN 07010507 (Developer) Semih Serdar CENGİZOĞLU

More information

Chapter 1 - Web Server Management and Cluster Topology

Chapter 1 - Web Server Management and Cluster Topology Objectives At the end of this chapter, participants will be able to understand: Web server management options provided by Network Deployment Clustered Application Servers Cluster creation and management

More information

Data Driven Success. Comparing Log Analytics Tools: Flowerfire s Sawmill vs. Google Analytics (GA)

Data Driven Success. Comparing Log Analytics Tools: Flowerfire s Sawmill vs. Google Analytics (GA) Data Driven Success Comparing Log Analytics Tools: Flowerfire s Sawmill vs. Google Analytics (GA) In business, data is everything. Regardless of the products or services you sell or the systems you support,

More information

Multiphase Flow - Appendices

Multiphase Flow - Appendices Discovery Laboratory Multiphase Flow - Appendices 1. Creating a Mesh 1.1. What is a geometry? The geometry used in a CFD simulation defines the problem domain and boundaries; it is the area (2D) or volume

More information

Available in Base or Survey Standard or Survey Professional series with different modules add-ons to suit your technical requirement and budget.

Available in Base or Survey Standard or Survey Professional series with different modules add-ons to suit your technical requirement and budget. World First Leading the Surveying and Civil Engineering software application, civilcad 6 is the world first application of its kind to run in the Plug and Go concept. Delivered pre-installed on a customised

More information

Learning Module 4 - Thermal Fluid Analysis Note: LM4 is still in progress. This version contains only 3 tutorials.

Learning Module 4 - Thermal Fluid Analysis Note: LM4 is still in progress. This version contains only 3 tutorials. Learning Module 4 - Thermal Fluid Analysis Note: LM4 is still in progress. This version contains only 3 tutorials. Attachment C1. SolidWorks-Specific FEM Tutorial 1... 2 Attachment C2. SolidWorks-Specific

More information

Article. One for All Apps in HTML5

Article. One for All Apps in HTML5 One for All Apps The boom of smartphones and tablets in the consumer sector creates new problems for developers of industrial Apps: They have to build Apps quickly that run on any type of smartphone and

More information

Why HTML5 Tests the Limits of Automated Testing Solutions

Why HTML5 Tests the Limits of Automated Testing Solutions Why HTML5 Tests the Limits of Automated Testing Solutions Why HTML5 Tests the Limits of Automated Testing Solutions Contents Chapter 1 Chapter 2 Chapter 3 Chapter 4 As Testing Complexity Increases, So

More information

GUI and Web Programming

GUI and Web Programming GUI and Web Programming CSE 403 (based on a lecture by James Fogarty) Event-based programming Sequential Programs Interacting with the user 1. Program takes control 2. Program does something 3. Program

More information

An Electronic Journal Management System

An Electronic Journal Management System An Electronic Journal Management System Hrvoje Bogunović, Edgar Pek, Sven Lončarić and Vedran Mornar Faculty of Electrical Engineering and Computing, University of Zagreb Unska 3, 0000 Zagreb, Croatia

More information

Interactive Data Visualization for the Web Scott Murray

Interactive Data Visualization for the Web Scott Murray Interactive Data Visualization for the Web Scott Murray Technology Foundations Web technologies HTML CSS SVG Javascript HTML (Hypertext Markup Language) Used to mark up the content of a web page by adding

More information

Candle Plant process automation based on ABB 800xA Distributed Control Systems

Candle Plant process automation based on ABB 800xA Distributed Control Systems Candle Plant process automation based on ABB 800xA Distributed Control Systems Yousef Iskandarani and Karina Nohammer Department of Engineering University of Agder Jon Lilletuns vei 9, 4879 Grimstad Norway

More information

Removing Heavy Metals from Wastewater

Removing Heavy Metals from Wastewater Removing Heavy Metals from Wastewater Engineering Research Center Report David M. Ayres Allen P. Davis Paul M. Gietka August 1994 1 2 Removing Heavy Metals From Wastewater Introduction This manual provides

More information

OpenFOAM Opensource and CFD

OpenFOAM Opensource and CFD OpenFOAM Opensource and CFD Andrew King Department of Mechanical Engineering Curtin University Outline What is Opensource Software OpenFOAM Overview Utilities, Libraries and Solvers Data Formats The CFD

More information

Request for Proposal (RFP) Toolkit

Request for Proposal (RFP) Toolkit Request for Proposal (RFP) Toolkit A Message from the CEO Hi, this is Ryan Flannagan, founder and CEO of Nuanced Media. Thanks for downloading the RFP Toolkit. My team and I are excited that you ve decided

More information

Choosing a Content Management System (CMS)

Choosing a Content Management System (CMS) Choosing a Content Management System (CMS) Document Version Revision History Date Document Version Description Created By: 10/Oct/2013 First draft Laraib Saad Table of Contents 1. Introduction

More information

Web [Application] Frameworks

Web [Application] Frameworks Web [Application] Frameworks conventional approach to building a web service write ad hoc client code in HTML, CSS, Javascript,... by hand write ad hoc server code in [whatever] by hand write ad hoc access

More information

Compatibility and Accuracy of Mesh Generation in HyperMesh and CFD Simulation with Acusolve for Torque Converter

Compatibility and Accuracy of Mesh Generation in HyperMesh and CFD Simulation with Acusolve for Torque Converter Compatibility and Accuracy of Mesh Genen in HyperMesh and CFD Simulation with Acusolve for Converter Kathiresan M CFD Engineer Valeo India Private Limited Block - A, 4th Floor, TECCI Park, No. 176 Rajiv

More information

Analytic Modeling in Python

Analytic Modeling in Python Analytic Modeling in Python Why Choose Python for Analytic Modeling A White Paper by Visual Numerics August 2009 www.vni.com Analytic Modeling in Python Why Choose Python for Analytic Modeling by Visual

More information

Generate Android App

Generate Android App Generate Android App This paper describes how someone with no programming experience can generate an Android application in minutes without writing any code. The application, also called an APK file can

More information

How to Design and Create Your Own Custom Ext Rep

How to Design and Create Your Own Custom Ext Rep Combinatorial Block Designs 2009-04-15 Outline Project Intro External Representation Design Database System Deployment System Overview Conclusions 1. Since the project is a specific application in Combinatorial

More information

IT3503 Web Development Techniques (Optional)

IT3503 Web Development Techniques (Optional) INTRODUCTION Web Development Techniques (Optional) This is one of the three optional courses designed for Semester 3 of the Bachelor of Information Technology Degree program. This course on web development

More information

Following statistics will show you the importance of mobile applications in this smart era,

Following statistics will show you the importance of mobile applications in this smart era, www.agileload.com There is no second thought about the exponential increase in importance and usage of mobile applications. Simultaneously better user experience will remain most important factor to attract

More information

ANSA and μeta as a CAE Software Development Platform

ANSA and μeta as a CAE Software Development Platform ANSA and μeta as a CAE Software Development Platform Michael Giannakidis, Yianni Kolokythas BETA CAE Systems SA, Thessaloniki, Greece Overview What have we have done so far Current state Future direction

More information

Client/server is a network architecture that divides functions into client and server

Client/server is a network architecture that divides functions into client and server Page 1 A. Title Client/Server Technology B. Introduction Client/server is a network architecture that divides functions into client and server subsystems, with standard communication methods to facilitate

More information

Online Fuzzy-C-Means clustering

Online Fuzzy-C-Means clustering Online Fuzzy-C-Means clustering Authors: Author s Addresses: Contact: Dezső Kancsár, Ágnes B. Simon H-1157 Budapest, Nyírpalota u. 79/C 2/8; College of Nyíregyháza, Rákóczi út 69. berszoft@ax.hu, simona@nyf.hu

More information

Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph. Client: Brian Krzys

Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph. Client: Brian Krzys Team Members: Christopher Copper Philip Eittreim Jeremiah Jekich Andrew Reisdorph Client: Brian Krzys June 17, 2014 Introduction Newmont Mining is a resource extraction company with a research and development

More information

IDL. Get the answers you need from your data. IDL

IDL. Get the answers you need from your data. IDL Get the answers you need from your data. IDL is the preferred computing environment for understanding complex data through interactive visualization and analysis. IDL Powerful visualization. Interactive

More information

D is for Science. John Colvin

D is for Science. John Colvin D is for Science John Colvin What is scientific programming? You want to do science, using a computer but the existing software isn t up to the task Scientific Programming Simulations Data Analysis Visualisations

More information

Programming Fundamentals of Web Applications Course 10958A; 5 Days

Programming Fundamentals of Web Applications Course 10958A; 5 Days Lincoln Land Community College Capital City Training Center 130 West Mason Springfield, IL 62702 217-782-7436 www.llcc.edu/cctc Programming Fundamentals of Web Applications Course 10958A; 5 Days Course

More information

Introduction to Web Development with R

Introduction to Web Development with R Introduction to Web Development with R moving to the cloud... Jeroen Ooms http://www.stat.ucla.edu/~jeroen UCLA Dept. of Statistics Revolution Analytics user 2010, Gaithersburg, Maryland, USA An example:

More information

MEng, BSc Applied Computer Science

MEng, BSc Applied Computer Science School of Computing FACULTY OF ENGINEERING MEng, BSc Applied Computer Science Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give a machine instructions

More information

Case Study. SaaS Based Multi-Store Market Place. www.brainvire.com 2013 Brainvire Infotech Pvt. Ltd Page 1 of 5

Case Study. SaaS Based Multi-Store Market Place. www.brainvire.com 2013 Brainvire Infotech Pvt. Ltd Page 1 of 5 Case Study SaaS Based Multi-Store Market Place Page 1 of 5 Client Requirement Magento Multi-Store Ecommerce Management is a web based virtual mall. It s an e- commerce virtual mall cum SaaS based model

More information

Introduction to Computational Fluid Dynamics (CFD) for Combustion. www.reaction-eng.com (801) 364-6925

Introduction to Computational Fluid Dynamics (CFD) for Combustion. www.reaction-eng.com (801) 364-6925 Introduction to Computational Fluid Dynamics (CFD) for Combustion www.reaction-eng.com (801) 364-6925 What is CFD? CFD stands for Computational Fluid Dynamics CFD uses computers to represent (or model)

More information

CrownPeak Java Web Hosting. Version 0.20

CrownPeak Java Web Hosting. Version 0.20 CrownPeak Java Web Hosting Version 0.20 2014 CrownPeak Technology, Inc. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical,

More information

Taxi Service Design Description

Taxi Service Design Description Taxi Service Design Description Version 2.0 Page 1 Revision History Date Version Description Author 2012-11-06 0.1 Initial Draft DSD staff 2012-11-08 0.2 Added component diagram Leon Dragić 2012-11-08

More information

Usability of Visualization Libraries for Web Browsers for Use in Scientific Analysis

Usability of Visualization Libraries for Web Browsers for Use in Scientific Analysis Usability of Visualization Libraries for Web Browsers for Use in Scientific Analysis Luke Barnard Technical Student CERN, Route de Meyrin 385 1217 Meyrin, Switzerland Matej Mertik Scientific Associate

More information

CrownPeak Playbook CrownPeak Hosting with PHP

CrownPeak Playbook CrownPeak Hosting with PHP CrownPeak Playbook CrownPeak Hosting with PHP Version 1.0 2014, Inc. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical,

More information

10CS73:Web Programming

10CS73:Web Programming 10CS73:Web Programming Question Bank Fundamentals of Web: 1.What is WWW? 2. What are domain names? Explain domain name conversion with diagram 3.What are the difference between web browser and web server

More information

CATALOG OF CLASSES IT and Technical Courses

CATALOG OF CLASSES IT and Technical Courses CATALOG OF CLASSES IT and Technical Courses Table of Contents CATALOG OF CLASSES... 1 Microsoft... 1 10135BC... 1 Configuring, Managing and Troubleshooting Microsoft Exchange Server 2010 Service Pack 2...

More information

Django Web Framework. Zhaojie Zhang CSCI5828 Class Presenta=on 03/20/2012

Django Web Framework. Zhaojie Zhang CSCI5828 Class Presenta=on 03/20/2012 Django Web Framework Zhaojie Zhang CSCI5828 Class Presenta=on 03/20/2012 Outline Web frameworks Why python? Why Django? Introduc=on to Django An example of Django project Summary of benefits and features

More information

Mobile Game and App Development the Easy Way

Mobile Game and App Development the Easy Way Mobile Game and App Development the Easy Way Developed and maintained by Pocketeers Limited (http://www.pocketeers.co.uk). For support please visit http://www.appeasymobile.com This document is protected

More information

HTML5. Turn this page to see Quick Guide of CTTC

HTML5. Turn this page to see Quick Guide of CTTC Programming SharePoint 2013 Development Courses ASP.NET SQL TECHNOLGY TRAINING GUIDE Visual Studio PHP Programming Android App Programming HTML5 Jquery Your Training Partner in Cutting Edge Technologies

More information

All About Android WHAT IS ANDROID?

All About Android WHAT IS ANDROID? All About Android WHAT IS ANDROID? Android specifically refers to a mobile operating system (based on Linux) that is developed by Google. It is open-source software, meaning that anyone can download the

More information

Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World

Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate between machine and assembly languages Identify

More information

Front-End Performance Testing and Optimization

Front-End Performance Testing and Optimization Front-End Performance Testing and Optimization Abstract Today, web user turnaround starts from more than 3 seconds of response time. This demands performance optimization on all application levels. Client

More information

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.

Web Frameworks. web development done right. Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof. Web Frameworks web development done right Course of Web Technologies A.A. 2010/2011 Valerio Maggio, PhD Student Prof.ssa Anna Corazza Outline 2 Web technologies evolution Web frameworks Design Principles

More information

OpenText Information Hub (ihub) 3.1 and 3.1.1

OpenText Information Hub (ihub) 3.1 and 3.1.1 OpenText Information Hub (ihub) 3.1 and 3.1.1 OpenText Information Hub (ihub) 3.1.1 meets the growing demand for analytics-powered applications that deliver data and empower employees and customers to

More information

Python and Google App Engine

Python and Google App Engine Python and Google App Engine Dan Sanderson June 14, 2012 Google App Engine Platform for building scalable web applications Built on Google infrastructure Pay for what you use Apps, instance hours, storage,

More information

opalang - Rapid & Secure Web Development

opalang - Rapid & Secure Web Development opalang - Rapid & Secure Web Development Syllabus Brief History of Web Development Ideas and Goals The Language itself Community Reason for Development Services and Apps written in OPA Future of OPA OPA

More information

Short notes on webpage programming languages

Short notes on webpage programming languages Short notes on webpage programming languages What is HTML? HTML is a language for describing web pages. HTML stands for Hyper Text Markup Language HTML is a markup language A markup language is a set of

More information

Advantage of Jquery: T his file is downloaded from

Advantage of Jquery: T his file is downloaded from What is JQuery JQuery is lightweight, client side JavaScript library file that supports all browsers. JQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling,

More information

Business & Computing Examinations (BCE) LONDON (UK)

Business & Computing Examinations (BCE) LONDON (UK) Business & Computing Examinations (BCE) LONDON (UK) Web Design Qualification Analysis & Occupational Outlook The development of BCE qualifications include extensive market research from the following sources:

More information

Introduction to CFD Analysis

Introduction to CFD Analysis Introduction to CFD Analysis Introductory FLUENT Training 2006 ANSYS, Inc. All rights reserved. 2006 ANSYS, Inc. All rights reserved. 2-2 What is CFD? Computational fluid dynamics (CFD) is the science

More information

Creating Library Website Using Open Source Content Management System

Creating Library Website Using Open Source Content Management System Creating Library Website Using Open Source Content Management System Vimal kumar V. 1 and Deepak Sankar 2 1 Asian School of Business Technopark Trivandrum-695 581 Vimal0212@yahoo.com 2 Deepak Shankar Malayalam

More information

ORACLE APPLICATION EXPRESS 5.0

ORACLE APPLICATION EXPRESS 5.0 ORACLE APPLICATION EXPRESS 5.0 Key Features Fully supported nocost feature of the Oracle Database Simple 2-Tier Architecture Develop desktop and mobile applications 100% Browserbased Development and Runtime

More information

DIABLO VALLEY COLLEGE CATALOG 2014-2015

DIABLO VALLEY COLLEGE CATALOG 2014-2015 COMPUTER SCIENCE COMSC The computer science department offers courses in three general areas, each targeted to serve students with specific needs: 1. General education students seeking a computer literacy

More information

This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications.

This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications. 20486B: Developing ASP.NET MVC 4 Web Applications Course Overview This course provides students with the knowledge and skills to develop ASP.NET MVC 4 web applications. Course Introduction Course Introduction

More information

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency

INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency INTERNET PROGRAMMING AND DEVELOPMENT AEC LEA.BN Course Descriptions & Outcome Competency 1. 420-PA3-AB Introduction to Computers, the Internet, and the Web This course is an introduction to the computer,

More information

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application BACKBONE.JS Sencha Touch CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application A RapidValue Solutions Whitepaper Author: Pooja Prasad, Technical Lead, RapidValue Solutions Contents Executive

More information

Cloud Web-Based Operating System (Cloud Web Os)

Cloud Web-Based Operating System (Cloud Web Os) Cloud Web-Based Operating System (Cloud Web Os) Hesham Abusaimeh Department of Computer Science, Faculty of Information Technology, Applied Science University, Amman, 11931 Jordan. ABSTRACT The cloud computing

More information

Improved metrics collection and correlation for the CERN cloud storage test framework

Improved metrics collection and correlation for the CERN cloud storage test framework Improved metrics collection and correlation for the CERN cloud storage test framework September 2013 Author: Carolina Lindqvist Supervisors: Maitane Zotes Seppo Heikkila CERN openlab Summer Student Report

More information