Editing User:Alisha

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 12: Line 12:
'''Location''': Ludhiana, Punjab, India
'''Location''': Ludhiana, Punjab, India


'''Typical Working Hours''':-GMT+5.30, Typical working hours will be 11AM to 2AM on working days and full time on weekends. I can devote 40 - 50 hours per week and more if required. My graduation will end by the mid of May. I will be completely free after that. My working hours for the internship will be flexible and subject to the requirements of the project.
'''Typical Working Hours''':-GMT+5.30, Typical working hours will be 11AM to 2AM on working days and full time on weekends. I can devote 40 - 50 hours per week and more if required. My graduation will end by the mid of May. I will be after that. I can spare ample time from my college timings for my project. My working hours for the internship will be flexible and subject to the requirements of the project.


== About me ==
== About me ==
I am an undergraduate 4th year Computer Science student at Guru Nanak Dev Engineering College, Ludhiana. I have formidable learning in C++, PHP and MySQL. I have a strong affinity for Mathematics which keeps my inquisitiveness alive for learning more about numerical functions and their implementation through programming.
I am an undergraduate 4th year Computer Science student at Guru Nanak Dev Engineering College, Ludhiana. I have formidable learning in C++, PHP and MySQL. I have a strong affinity for Mathematics which keeps my inquisitiveness alive for learning more about numerical functions and their implementation through programming. I am also passionate for programming.


== Heard about this program ==
== Heard about this program ==
Line 43: Line 43:
== Project Details ==
== Project Details ==
=== Interested project ===
=== Interested project ===
Because of my affinity for mathematics, I have my keen interest in [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Generalised_eigenvalue_problem Generalised_eigenvalue_problem] project and would like to explore myself in the field of matrices.
Because of my affinity for mathematics, I have my keen interest in 'Generalised_eigenvalue_problem' project [http://wiki.octave.org/Summer_of_Code_Project_Ideas#Generalised_eigenvalue_problem]. I want to explore myself more in the field of matrices.


=== Introduction to Project ===
== Your task ==
This project deals with the [http://in.mathworks.com/help/matlab/ref/eig.html?searchHighlight=eig eig] function in GNU Octave, which calculates the eigenvalues and eigenvectors of a matrix.
* Did you select a task from our list of proposals and ideas?
 
''yes''
 
** If yes, what task did you choose? Please describe what part of it you especially want to focus on if you can already provide this information.
 
''http://wiki.octave.org/Summer_of_Code_Project_Ideas#Nonlinear_and_constrained_least_squares''
 
''http://octave.1599824.n4.nabble.com/GSoC-2015-Optimization-Package-Non-linear-and-constrained-least-squares-lsqcurvefit-lsqlin-lsqnonlin-tt4668777.html''
 
* Please provide a rough estimated timeline for your work on the task.  
 
GSoC Application period
 
'' 'quadprog' wrapper around 'qp' ''


=== Synopsis ===
'' 'lsqlin' wrapper around 'qp' ''
This project will implement missing calling forms of the eig function, which includes preliminary balancing, calculating left eigenvectors as a third ouput and choosing among the generalized eigenvalue algorithms.


== Detail Project Timeline ==
Start of GSoC (May)


'' 'lsqnonlin' wrapper around 'nonlin_residmin' ''


Community bonding period
'' 'lsqcurvefit' wrapper around 'nonlin_curvefit', 'nonlin_residmin', or 'lsqnonlin', ''


    Getting familiar with the code
'' 'fmincon' wrapper around 'nonlin_min', ''
    Interaction with mentors and the community members


1st week (25th May - 30th May)
Midterm


    Designing the algorithm for calculation of left eigenvectors
instead of wrappers for top-level functions like qp. Call back-end function (__qp__) to be able to extract lambda.


2nd week (1st June - 7th June)
See [http://octave.1599824.n4.nabble.com/GSoC-2015-Optimization-Package-Non-linear-and-constrained-least-squares-lsqcurvefit-lsqlin-lsqnonlin-tp4668777p4669284.html]


    Implementation of the algorithm
Stretch Goals
Implement another back-end algorithm/add variant.


3rd week (8th June - 14th June)


    Implementation of calling form for calculating left eigenvectors as third output


4th week (15th June - 21th June)


    Studying Cholesky Factorisation algorithm and QR algorithm
=== Introduction to Project ===
This project deals with the file conversion of various file formats. The Translate extension has been developed for this purpose. The extension is made supportive for various file formats but the work for only specific format of the input files. The data is read from the input file and stored in the arrays (in the form of key-value pair for JSON file format) and then written in the output file following the file format specifications of the output file format.


5th week (22nd June - 28th June)
=== Synopsis ===
This project will make the extension robust so that it can handle even the exceptional cases of the input file format. Moreover, a proper documentation will be maintained for the different file formats. I will be mainly focusing on AndroidXML, Qt ts and JSON file formats.


    Implementation of the calling form to choose among generalised algorithms
=== Present state of project ===
After carrying out the scrutiny of present working code I found the following limitations:- Lack of proper documentations, unable to handle abnormal cases, only specific format of input file is translated, lack of robust programming and code is not secure.


Mid-Term Evaluation
=== Project partition ===
Based on the different file formats I will be working on my project will be partioned in the following three parts:-
AndroidXML
QT ts
JSON


    Calling form of eig to calculate left eigenvectors as third output
== Timeline - December 9, 2014 to March 9, 2015 ==
    Calling form for choosing among generalised eigenvalue algorithms


7th week (6th July - 12th July)
=== November 1 to December 9 ===
* Setup the extension
* Communicate with the community members and get involved in it
* Work on a micro-task to get familiar with the extension
* Study the file format specifications
* Study the corner cases


    Understanding the concept of balancing
=== December 10 to December 20 ===
* Work on reading the AndroidXML file
* Examine the corner cases while reading the file


8th week (13th July - 19th July)
=== December 21 to December 31 ===
* Work on writing the AndroidXML file


    Implementation of algorithm for balancing option
=== January 1 to January 10 ===
* Testing on AndroidXML files for abnormalities
* Proceed with the decoding of the JSON files


9th week (20th July - 26th July)
=== January 11 to January 20 ===
* Proceed with the decoding of the JSON files
* Robust the code


    Implementation of calling form for preliminary balancing
=== January 20 to January 31 ===
* Testing on JSON files for the accuracy
* Study on the specifications of QT ts file format


10th week ( 27th July - 2nd August)
=== February 1 to February 10 ===
* Work on reading the QT files
* Examine the exceptional cases while reading the file


    Writing test cases for these calling forms of eig function
=== February 11 to February 20 ===
* Work on writing the QT files
* Testing the code with aberrant cases of the file format


11th and 12th week(3rd August - 16th August)
=== February 21 to february 28 ===
* Testing and enhancing the code
* Fixing all the bugs


  Documentation for the code
=== March 1 to March 9 ===
  Reviewing the code
* Documentation
  Final touches to the code
* Mediawiki coding conventions


== Other Commitments ==
== Other Commitments ==
Till mid of May, I would be having my final exams. But after that I would be completely free to devote all my time to GSoC. So I will be comfortably able to manage to fulfill my tasks within the specified time.
Till mid of May, I would be having my final exams. But after that I would be completely free to devote all my time to GSoC. So I will be comfortably able to manage to fulfill my tasks within the specified time.


== Objective of joining GNU ==
== Objective of joining GNU Octave ==
 
As I loved the very concept of open source development from the moment I learned about it, it would be a matter of honour for me to be a part of such a splendid crew. Also I have a firm belief that I will excel tremendously in my area of interest and nurture my skills by working ardently. GNU Octave being an paradigm of its field enticed me to work with it and learn manifold new things.
I have been using stupendous products of GNU organisation from the very starting point of my career in open source world. I have been a regular user of GNU Bison, gdb, gcc etc. GNU Octave being a project which touches my area of interest. So, it would be a great honor for me to be a part of such a cardinal community and ameliorate myself in the field of programming and mathematics.


== Why me? ==
== Why me? ==
 
Being highly assiduous and fervent for my work I would love to contribute to the open source development since it is like a holy grail to me. I had been into coding environment from quite a time and I wish to apply my whole coding-impetus to a point. I have joined the octave-maintainers@gnu.org mailing list and #octave channel on IRC a few days ago and I am feeling good to interact there and I have already got some valuable suggestions. This is the real blessing for the young saplings in the garden of programming to grow in the guidance of the sublime mentors. I am so much self-obliged and excited to work with dexterous developers across the globe and be a part of the legacy.
Because of my keen interest of contributing to the open source world and Octave being the most suitable community for me, I would like to put all sincere efforts to complete my project within the time period. I have joined octave-maintainers@gnu.org mailing list and #octave channel on IRC a few days ago and feeling great to interact with the community members and also I have got worthy feedback from them. Also, I have a good experience with C++ and mathematics always being one of my favorites, I think I am suitable according to the requirements of the project.
 
[[Category: Summer of Code]]
Please note that all contributions to Octave may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Octave:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)