{"id":236,"date":"2011-04-10T04:25:45","date_gmt":"2011-04-10T04:25:45","guid":{"rendered":"http:\/\/blog.filipesaraiva.info\/?p=236"},"modified":"2011-05-10T18:24:02","modified_gmt":"2011-05-10T18:24:02","slug":"proposal-submitted-to-gsoc-support-scilab-in-cantor","status":"publish","type":"post","link":"https:\/\/filipe.saraiva.tec.br\/blog\/?p=236","title":{"rendered":"Proposal submitted to GSoC: Support Scilab in Cantor"},"content":{"rendered":"<p style=\"text-align: justify;\">The deadline for submission of projects for <a href=\"http:\/\/google-melange.com\/\" target=\"_blank\">Google Summer of Code (GSoC)<\/a> 2011 has ended. Now, I will talk briefly about my proposal &#8211; which, in fact, <a href=\"http:\/\/community.kde.org\/GSoC\/2010\/Ideas#Project:_Cantor:_Add_a_new_Backend\" target=\"_blank\">has appeared as a suggestion<\/a> on other issues of the GSoC program.<\/p>\n<p style=\"text-align: justify;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/scilab_logo_small.jpg\" alt=\"\" width=\"200\" height=\"111\" \/><\/p>\n<p style=\"text-align: justify;\"><a href=\"http:\/\/scilab.org\/\" target=\"_blank\">Scilab<\/a> is a major scientific  environments mathematical programming in free software available on the  market, an alternative of comparable quality to proprietary environment  Matlab. Its initial development occurred in 1990, promoted by  researchers associated with the french institutions INRIA (<em>Institut  National de Recherche en Informatique et en Automatique<\/em>) and ENPC (<em>\u00c9cole  Nationale des Ponts et Chauss\u00e9es<\/em>). In 2003 Scilab Consortium was  created to promote the scientific software Scilab as a reference for  academia and industry.<\/p>\n<p>Scilab  is used by various research centers, universities and industries around  the world in diverse research as signal processing, simulation of fluid  dynamics, combinatorial optimization, computational simulation, machine  learning, among others.<\/p>\n<p><!-- p, li { white-space: pre-wrap; } --><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/cantor_maxima_demo_big.png\" alt=\"\" width=\"480\" height=\"357\" \/><\/p>\n<p style=\"text-align: center;\">Cantor &#8211; <a href=\"http:\/\/arieder.wordpress.com\/2009\/10\/20\/introducing-cantor\/\" target=\"_blank\">screenshot<\/a> by Alexander Rieder<\/p>\n<p style=\"text-align: justify;\"><a href=\"http:\/\/edu.kde.org\/cantor\/\" target=\"_blank\">Cantor<\/a> is a scientific software of KDE SC that serves as a graphical interface  for mathematical processing software from a structure that provides  plugins for these backends. Currently, Cantor supports the use of  KAlgebra, Sage, Maxima, R, and GNU Octave.<\/p>\n<p>The  great interest for the use of Cantor is the possibility of working with  scientific and mathematical programming in a modern setting, with  available features such as printing of code, working on multiple tabs,  have available a text editor with syntax highlighting, auto-complete  gifts and more functions from the technologies of Qt and KDE library.<\/p>\n<p style=\"text-align: justify;\">Well, my proposal aims to create a  backend for Scilab in Cantor, thus promoting the environment supports  this mathematical scientific nature of this software for KDE. So, give  the Cantor even more visibility in academic and industrial community of  mathematical programming as an alternative consistent and flexible  graphical interface for the main mathematical programming environments  available, particularly for Scilab which is one of the most used and  widely recognized quality undisputed among others on the market.<\/p>\n<p style=\"text-align: justify;\">To provide basis for the proposal, I&#8217;m developing code in pure C++ that calls Scilab to perform work. I use the API Scilab named <a href=\"http:\/\/help.scilab.org\/docs\/5.3.1\/en_US\/call_scilab.html\" target=\"_blank\">call_scilab<\/a> for it. This only serves to prove that it is possible to develop the backend via the API Scilab.<\/p>\n<p style=\"text-align: justify;\">For example, let us define a matrix &#8220;x&#8221; in Scilab with 100 elements (click on pictures to enlarge):<\/p>\n<p style=\"text-align: justify;\"><a href=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabMatrix1.png\"><\/a><a href=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabMatrix1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"237\" data-permalink=\"https:\/\/filipe.saraiva.tec.br\/blog\/?attachment_id=237\" data-orig-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix.png\" data-orig-size=\"1280,800\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"ScilabMatrix\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-300x187.png\" data-large-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-1024x640.png\" class=\"aligncenter size-large wp-image-237\" title=\"ScilabMatrix\" src=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabMatrix1.png\" alt=\"\" width=\"614\" height=\"384\" \/><\/a><br \/>\nand now, in a C++ code with call_scilab. In the left is the code; in the right, the executing program:<\/p>\n<p><a href=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabAPIMatrix1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"237\" data-permalink=\"https:\/\/filipe.saraiva.tec.br\/blog\/?attachment_id=237\" data-orig-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix.png\" data-orig-size=\"1280,800\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"ScilabMatrix\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-300x187.png\" data-large-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-1024x640.png\" class=\"aligncenter size-large wp-image-237\" title=\"ScilabMatrix\" src=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabAPIMatrix1.png\" alt=\"\" width=\"614\" height=\"384\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">Ok, this works! Now, we perform a mathematical operation with new definition and assignment of variables (y = 2 * x; z = 2 * x + 3 * y). First, in Scilab:<\/p>\n<p><a href=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabMatrixOperation1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"237\" data-permalink=\"https:\/\/filipe.saraiva.tec.br\/blog\/?attachment_id=237\" data-orig-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix.png\" data-orig-size=\"1280,800\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"ScilabMatrix\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-300x187.png\" data-large-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-1024x640.png\" class=\"aligncenter size-large wp-image-237\" title=\"ScilabMatrix\" src=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabMatrixOperation1.png\" alt=\"\" width=\"614\" height=\"384\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">Now, in C++ code:<\/p>\n<p><a href=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabAPIMatrixOperation1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"237\" data-permalink=\"https:\/\/filipe.saraiva.tec.br\/blog\/?attachment_id=237\" data-orig-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix.png\" data-orig-size=\"1280,800\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"ScilabMatrix\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-300x187.png\" data-large-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-1024x640.png\" class=\"aligncenter size-large wp-image-237\" title=\"ScilabMatrix\" src=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabAPIMatrixOperation1.png\" alt=\"\" width=\"614\" height=\"384\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">Finally, we will draw now the graphic of &#8220;z&#8221;. In Scilab:<\/p>\n<p><a href=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabMatrixPlot1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"237\" data-permalink=\"https:\/\/filipe.saraiva.tec.br\/blog\/?attachment_id=237\" data-orig-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix.png\" data-orig-size=\"1280,800\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"ScilabMatrix\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-300x187.png\" data-large-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-1024x640.png\" class=\"aligncenter size-large wp-image-237\" title=\"ScilabMatrix\" src=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabMatrixPlot1.png\" alt=\"\" width=\"614\" height=\"384\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">And, using C++ code:<\/p>\n<p><a href=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabAPIMatrixPlot1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"237\" data-permalink=\"https:\/\/filipe.saraiva.tec.br\/blog\/?attachment_id=237\" data-orig-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix.png\" data-orig-size=\"1280,800\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"ScilabMatrix\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-300x187.png\" data-large-file=\"https:\/\/filipe.saraiva.tec.br\/blog\/wp-content\/uploads\/2011\/04\/ScilabMatrix-1024x640.png\" class=\"aligncenter size-large wp-image-237\" title=\"ScilabMatrix\" src=\"http:\/\/blog.filipesaraiva.info\/wp-content\/uploads\/2011\/04\/ScilabAPIMatrixPlot1.png\" alt=\"\" width=\"614\" height=\"384\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">Well, the challenge now is to take it for implementation with Qt and C++, and develop the backend according to the standards of Cantor. Another challenge is about generating graphics in Scilab, but I already placed an alternative for implementation this in project that I sent to the GSoC.<\/p>\n<p style=\"text-align: justify;\">I am very excited about the possibility of working with two communities of free software (KDE and Scilab) in GSoC. And, indeed, this project will be my puppy in KDE! \ud83d\ude00<\/p>\n<p style=\"text-align: justify;\">I&#8217;m hoping! Greetings!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The deadline for submission of projects for Google Summer of Code (GSoC) 2011 has ended. Now, I will talk briefly about my proposal &#8211; which, in fact, has appeared as a suggestion on other issues of the GSoC program. Scilab is a major scientific environments mathematical programming in free software available on the market, an&hellip;&nbsp;<a href=\"https:\/\/filipe.saraiva.tec.br\/blog\/?p=236\" class=\"\" rel=\"bookmark\">Continue a ler &raquo;<span class=\"screen-reader-text\">Proposal submitted to GSoC: Support Scilab in Cantor<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[35,23,9],"tags":[11,47,59,26,51,41,52,55],"class_list":["post-236","post","type-post","status-publish","format-standard","hentry","category-academico","category-pessoal","category-software-livre","tag-desenvolvimento","tag-gsoc","tag-gsoc2011-scilab-backend","tag-kde","tag-planet-mageia-english","tag-planeta-psl-pi","tag-planetkde-english","tag-scilab"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p1p2Jh-3O","jetpack_sharing_enabled":true,"jetpack_likes_enabled":false,"_links":{"self":[{"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/posts\/236","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=236"}],"version-history":[{"count":6,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/posts\/236\/revisions"}],"predecessor-version":[{"id":314,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=\/wp\/v2\/posts\/236\/revisions\/314"}],"wp:attachment":[{"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=236"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=236"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/filipe.saraiva.tec.br\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=236"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}