List of tasks offered under FOSSEE Summer Fellowship 2018

Xcos on Cloud

Task 1:     User defined blocks

The fellows will be working on user defined blocks where they will work on JavaScript and HTML. Make simultaneous pop ups for collecting data from user and getting that data in data structure format by using already created Xcos's JS function and then converting it to XML which is compatible to Scilab's Xcos. Testing these blocks with examples.

 

Task 2:     Upgrade import diagram feature

Working on import function of Xcos-on-cloud project where blocks used in Xcos diagram will maintain/retain the parameters values of every block as given by user and should not get initialised to default values.

 

Task 3:     Draggable graph pop up

Fellows will be working on blocks like  LOOKUP_f and CURV_f, where they have to make draggable graph i.e. the points of graph can be changed by dragging those points on desirable (x,y) position and the output of that block will change accordingly. On click to blocks pop up opens up with graph window which has draggable points and user can change the graph values and new updated values will get updated in xml.

 

Scilab Toolboxes

FOSSEE Optimization Toolbox:

Fellows will work on toolbox upgradation. They will also work on making the upgraded toolbox work seamlessly on a Windows platform. It will also be explored if Google OR tools and ECOS (conic solver library) can be added to the toolbox. The other team will work on developing more and better examples for the existing toolbox functions. They will also work on the documentation, bug fixing and completing the spoken tutorial scripts made by previous contributors.

 

FOSSEE Signal Processing Toolbox:

The fellows will work on improving the documentation of the existing functions in the current toolbox. One fellow will work on fixing the non-working functions and develop test-cases for the required ones. He/ She will also be asked to use https://travis-ci.org/ for better version control and testing of the codes. One (or two) fellow(s) will be assigned to work on the “Communication Systems Toolbox” and take it to a better level. The fellows will also be given some application-based problems, which might be solved using FOSSEE Signal Processing Toolbox.

 

Scilab2C Toolbox:

The fellows will test the entire toolbox to identify a fault/bug and fix the same. They will work on adding support for symbolic functions such as z and s. They will also work on allowing variables with an unknown output size. The scilab colon operator will be added to the toolbox support. Problems with porting C to Arduino platform will be addressed. Usage of Open Modelica will be explored and compared for generating C code from a model.

 

OpenPLC

The fellows will be responsible for completing small amount of work that is remaining for Advanced Simulation Dialog of ldmicro. viz Saving the component drawings in advanced simulation dialog in a file, and retrieving the saved diagram on opening. Apart from this, they will be responsible for porting the entire ldmicro software to linux(Ubuntu) environment. The core functionality of the software is easily portable to linux. Designing a UI for the software is a challenge as the original developer of ldmicro (Jonathan Westhues) wishes to use a native gui for linux which is not available for Ubuntu. The task is to design a framework for the software using Xwindow system which is close to being native.

 

eSim

Circuit simulation

The fellows will be working on adding libraries to eSim using subcircuit builder and device modeling. The newly added libraries has to be demonstrated with a circuit simulation example and has to be documented as a part of eSim user manual.

 

FOSSEE Web Development

As a part of the FOSSEE Summer Fellowship 2018, the fellow(s) selected for the FOSSEE Web Development task will be assigned five tasks.

Task 1 : Implement a custom module to create profiles for colleges using Drupal 7

Task 2 : Implement a custom module to automate the events page using Drupal 7

Task 3 : Designing and developing a FOSSEE website using Drupal 7 CMS

Task 4 : Implement a custom module to display the statistics using an India map using Drupal 7

Task 5 : Implement the spam filter algorithm in FOSSEE forums website and a moderator interface to delete the questions and improve the quality of question

Task 6: Candidates shortlisted under this task will work on Nghdl. There are some bugs in certain Ngspice code models due to which Nghdl is still incomplete. Interns will have to identify those bugs, make changes in automation script accordingly and test the product with more examples. Interns can take some time to learn the basics of Ngspice code models and VHDL programming. Future tasks may include expanding the allowed VHDL input format more generic. This has to be done in consultation with the project guide.

 

CFD

Task 1: Selected candidates will get an opportunity to do an internship in IIT Bombay, on Open Source CFD Simulation, under Prof. Shivasubramanian Gopalakrishnan from Mechanical Engineering Department via Case Study Project  OR

Selected candidates will help in preparing manuals for workshops.

 

Task 2: Selected candidates will ensure correction and resubmission of other Case Study Projects that were submitted for Fellowship. They will also help and review proposed Case Studies which were proposed but not submitted for Fellowship

 

Osdag

  1. Creating Sample Design Examples:
    1. Create new sample design examples, not just for the existing modules but also for modules which are under development.
    2. Do hand calculations to solve these problems to validate the designs produced by Osdag.
    3. Create pdfs (in Latex) for the questions and its solution (in Osdag).
    4. Add these pdfs along with the osi files and design report pdfs that are generated by Osdag to Osdag documentation.
  2. Testing:
    1. Test all features like 2D drawings, design reports, design preferences, CAD models etc in the existing and the newly developed modules to find and document all the bugs.
    2. Test Osdag with all the corner cases and edge cases and report the results.
    3. Test installers in different OS and architectures.

 

R

All the selected fellows have to incorporate the review comments in their submitted textbook Companion. Once their submissions are found to be perfect and following the standards of R-TBC project, these will be uploaded on https://r.fossee.in/ and made available for public use.

 

Task 1: Creation of Spoken Tutorials - Selected fellows for creating Spoken Tutorials have to appear for a checklist test (the details of which will be shared later). After clearing the test, they can start creating the Spoken Tutorials under the guidance of the mentors. For this, the fellows will need to learn more technical tools.

 

Task 2: Textbook companion (TBC) - Create a textbook companion in R. Additionally, contact other candidates, who applied for fellowship under R and guide them in successful completion of the TBC.

 

DWSIM

Using the CAPE-OPEN Unit Operation feature available in DWSIM, selected fellows will create custom objects/unit operations which aren't available in DWSIM. These unit operations will be created in Scilab/Python/IronPython and then they will be imported to DWSIM using the feature CAPE-OPEN Unit Operation. Also, these customs unit operations will be used to create & simulate example flowsheet. On successful, implementation of these feature, spoken tutorials will be developed on how to create custom unit operations in DWSIM using Scilab/Python/IronPython.

 

OpenModelica

Task 1: Creation of OpenModelica Textbook Companions using OpenIPSL Library

Using both OpenModelica and OpenIPSL (the Modelica library for Power systems simulations) the students will work on Textbook Companion (TBC) project. Each of the selected students will submit at least two power systems textbook. The assigned books are as follows:

  • Power System Analysis by John J Grainger.
  • Power System Analysis and Design by B.R Gupta
  • Modern Power System Analysis by D P Kothari and I J Nagrath
  • Electric Power System by S.A Nasar & F.C Trutt

If the time permits the students will work on the model development for OpenIPSL and submit their work via GitHub. Selected candidates will also ensure correction and resubmission of their own codes for TBC in case some error found after their first submission.

 

Task 2: Development of Chemical Engineering Thermodynamics Library

Thermodynamic Models to be created: UNIFAC, UNIQUAC, Soave-Redlich-Kwong, Lee-kesler-Plocker

  1. Create models to perform Vapor-Liquid Equilibrium (VLE)     calculations using the above stated thermodynamic models.    
  2. Create two sample test cases for the developed model
  3. Verify the results obtained in OpenModelica with DWSIM & hand calculations
  4. Create documentation for these models

 

Task 3: Testing existing unit operations in OpenModelica

Unit Operations to be tested: Shortcut Column, Heat Exchanger, Mixer, Flash, Centrifugal pump, Adiabatic Expander, Compressor, Heater & Cooler, Valve

  1. Simulate the above mentioned unit operations with 5-7 different test conditions like azeotropic mixtures, varying pressure profiles, above dew point, below bubble point etc.   
  2. Verify the results obtained in OpenModelica with DWSIM & hand calculations

 

Task 4: Embedded Applications of OpenModelica

  1. Implementing Model Based Design i.e. creating models for different embedded applications and generating C code that can be ported to the respective family of microcontrollers. Initially the target controller will be Atmega328p i.e. Arduino Uno development board. But later on it will be generalised to different families of controllers.  
  2. Improving the Hardware In Loop (HIL) implementation on OpenModelica and Arduino.The current implementation which is based on Inter Process Communication (IPC) needs to be made robust. Hence wants to come up with a less cumbersome  IPC for HIL.

 

Task 5: Textbook companion (TBC) - Create a textbook companion in OpenModelica. Additionally, contact other candidates, who applied for fellowship under OpenModelica and guide them in successful completion of the TBC.

 

Spoken Tutorial Web Development

Task 1: Implement the spam filter algorithm in Spoken Tutorial Forums with documentation.

 

Task 2: Develop a custom module to automate the calculation of honorarium payable to all external contributors of the Spoken Tutorial Project with documentation.

 

Task 3: Develop a custom module to implement one video with multiple audio tracks with documentation

 

Task 4: Develop a custom module to implement change of Organiser from one Institute to another without loss of history.  Similarly, for Student who moves from Bachelors to Masters within the same Institute or another Institute, without loss of history.  Both tasks have to be documented as well.

 

Task 5: Awards and Recognition for all User Roles - for eg: Star Students, Star Organisers, Star Contributors, Star Training Institute (max no. of students who have done training), Star Institute who has taken max no. of test, Star Institute with highest rankers in Tests, etc.  Again documentation will be required.

 

PYTHON

Task 1: Data Analysis : Analysis and Reporting on yaksh data.

 

Task 2: Additional  Programming Language support on yaksh: Languages like JS, R, Java

 

Task 3: Plagiarism check in answers on yaksh quizzes: To check if answers/assignments submitted by students are same

 

Task 4: YAML upload/download for course and Question Template in yaksh: Upload/Download complete course in yaml format

 

Task 5: UI/UX on Yaksh: Beautification of Yaksh website

 

Task 6: fossee forum: Bug fixes and implement test cases, implement moderate interface.

 

Task 7: fossee certificate: Improve existing codebase

 


Commencement of fellowship

The Fellowship will start on 20 May 2018. If you are unable to join on 20 May, please inform us early by mailing at info[at]fossee[dot]in, so that the dates can be adjusted accordingly.

 

Accomodation at IIT Bombay

All the fellows will be provided with accommodation in IIT Bombay hostels on twin sharing basis. A caution deposit of INR 2000 (which is refundable) is there for the hostel. The hostel fees and mess charges have to be borne by you. Approximately this charges will be INR 4500/- P.M.

 

Stipend

All fellows will be paid a stipend of INR 10,000 pm, on successful completion of the assigned task. If the fellow does an excellent work, an additional amount of INR 7500 will be paid.