This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
en:projects:details:gio01 [2011/09/22 10:05] etesami |
en:projects:details:gio01 [2016/06/23 11:26] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
---- dataentry project ---- | ---- dataentry project ---- | ||
- | title : Simulating kinetic theory of gases | + | title : Implementing a conference scheduling system in Ruby on Rails |
- | contactname: Omid Etesami | + | contactname: Giovanni Cangiani |
- | contactmail_mail: omid.etesami | + | contactmail_mail: giovanni.cangiani@epfl.ch |
- | contacttel: 36793 | + | contacttel: 021 6937526 |
- | contactroom: BC 150 | + | contactroom: BC 149 |
type : bachelor semester | type : bachelor semester | ||
- | status : available | + | state : unavailable |
table : projects | table : projects | ||
- | created_dt : 2011-09-22 | + | created_dt : 2009-05-29 |
taken_dt : | taken_dt : | ||
completed_dt : | completed_dt : | ||
Line 17: | Line 17: | ||
---- | ---- | ||
- | A simple model to relate macroscopic properties of gases to the microscopic properties of their molecules is the kinetic model for gases. (See for example Feynman Lectures on Physics, Volume 1, Chapter 39, "Kinetic theory of gases"). For simplicity, you can assume that the gas is monatomic like Helium. Then, you can think of the gas as a lot of small balls (atoms) colliding to each other or colliding to the container elastically. These collisions constantly change the directions of the movement of the balls. | + | This project is very practical. Its goal of this project is to design and implementat of an important feature of a web-based |
- | + | conference organization system that is being developed in our lab: a semi-automatic system | |
- | The goal of this project is to simulate such a system. You can then see | + | for scheduling the talks and the sessions of a conference starting from the list of accepted papers. |
- | 1. the relation between pressure and average kinetic energy, | + | |
- | 2. the velocity distribution of the molecules, | + | |
- | 3. the speed with which the system approaches equilibrium from a non-equilibrium state. | + | |
- | The simulation can be generalized in many ways: | + | The taker of the project will have to deal with the following tasks |
+ | * review of existing implementations | ||
+ | * design of the object model | ||
+ | * design of an easy-to-use and elegant user interface | ||
+ | * implementation of the computer program | ||
+ | * (optional) research and implementation of an automatic methods for scheduling the talks | ||
- | 1. You can consider two different types of molecules in the same container, for example, both Helium and Argon. You can verify that the molecule with more mass has on average a smaller velocity. | + | The taker of the project will have the opportunity to learn and/or improve his knowledge about |
+ | * the Ruby language | ||
+ | * the [[http://rubyonrails.org/|Ruby on Rails]] web development framework | ||
+ | * test-driven development | ||
+ | * user interface design | ||
+ | * scheduling and resource allocation algorithms | ||
+ | * [[http://git-scm.com/|git]] distributed control version system | ||
- | 2. You can consider polyatomic molecules by modeling each molecule as a bunch of atoms connected together with sticks. Then, there will be rotational as well as translational movements. You can then check the "equipartition theorem" that relates the average rotational energy to the average translational energy. You can further generalize the model by letting springs, instead of sticks, connect the atoms. | ||
- | 3. You can add pistons that allow interaction between two containers. Then, you can verify that the piston equalizes the average kinetic energy of the molecules in the two containers. | ||
- | |||
- | The prerequisite for this project is the ability to find algorithms and data structures to simulate the model efficiently + knowing the basic probability required to analyze the results of the simulation. |