diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/CNAME b/CNAME new file mode 100755 index 0000000..7e2f369 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +giuseppesilano.net \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100755 index 0000000..261eeb9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md new file mode 100755 index 0000000..7f804ba --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +[![Jekyll site CI](https://github.com/gsilano/gsilano.github.io/actions/workflows/jekyll.yml/badge.svg)](https://github.com/gsilano/gsilano.github.io/actions/workflows/jekyll.yml) +[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) + +# The Giuseppe Silano's website +This is the source code of my personal website. diff --git a/assets/bibliography/ieee.csl b/assets/bibliography/ieee.csl new file mode 100755 index 0000000..2039feb --- /dev/null +++ b/assets/bibliography/ieee.csl @@ -0,0 +1,396 @@ + + \ No newline at end of file diff --git a/assets/css/styles.css b/assets/css/styles.css new file mode 100755 index 0000000..5fe3367 --- /dev/null +++ b/assets/css/styles.css @@ -0,0 +1,42 @@ +.youtube-wrapper { + position: relative; + width: 100%; + height: 0; + padding-bottom: 56.25%; +} +.youtube-wrapper iframe { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} + +html,body { margin:0; padding: 0; } +#main_block { + display: block; /* Useless, divs are display:block */ + width: 100%; /* Useless, display:block elements are width:100% by default */ + height: 100%; /* Fairly useless now, should take children's height */ + font-size:0; /* Force space between inline-block elements to be 0 */ +} +#left_frame { + width: 140px; +} +#right_frame { + width: calc(100% - 140px); +} +#left_frame,#right_frame { + display: inline-block; + box-sizing: border-box; + height: calc(100vh - 50px); +} +.b_footer { + padding: 10px; + height: 50px; + background-color: blue; + text-align: center; + color: white; + font-weight: bold; + box-sizing: border-box; +} diff --git a/assets/main.css b/assets/main.css new file mode 100644 index 0000000..e5c9b73 --- /dev/null +++ b/assets/main.css @@ -0,0 +1,277 @@ +/** Reset some basic elements */ +body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, hr, dl, dd, ol, ul, figure { margin: 0; padding: 0; } + +/** Basic styling */ +body { font: 400 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; color: #111; background-color: #fdfdfd; -webkit-text-size-adjust: 100%; -webkit-font-feature-settings: "kern" 1; -moz-font-feature-settings: "kern" 1; -o-font-feature-settings: "kern" 1; font-feature-settings: "kern" 1; font-kerning: normal; display: flex; min-height: 100vh; flex-direction: column; } + +/** Set `margin-bottom` to maintain vertical rhythm */ +h1, h2, h3, h4, h5, h6, p, blockquote, pre, ul, ol, dl, figure, .highlight { margin-bottom: 15px; } + +/** `main` element */ +main { display: block; /* Default value of `display` of `main` element is 'inline' in IE 11. */ } + +/** Images */ +img { max-width: 100%; vertical-align: middle; } + +/** Figures */ +figure > img { display: block; } + +figcaption { font-size: 14px; } + +/** Lists */ +ul, ol { margin-left: 30px; } + +li > ul, li > ol { margin-bottom: 0; } + +/** Headings */ +h1, h2, h3, h4, h5, h6 { font-weight: 400; } + +/** Links */ +a { color: #2a7ae2; text-decoration: none; } + +a:visited { color: #1756a9; } + +a:hover { color: #111; text-decoration: underline; } + +.social-media-list a:hover { text-decoration: none; } + +.social-media-list a:hover .username { text-decoration: underline; } + +/** Blockquotes */ +blockquote { color: #828282; border-left: 4px solid #e8e8e8; padding-left: 15px; font-size: 18px; letter-spacing: -1px; font-style: italic; } + +blockquote > :last-child { margin-bottom: 0; } + +/** Code formatting */ +pre, code { font-size: 15px; border: 1px solid #e8e8e8; border-radius: 3px; background-color: #eef; } + +code { padding: 1px 5px; } + +pre { padding: 8px 12px; overflow-x: auto; } + +pre > code { border: 0; padding-right: 0; padding-left: 0; } + +/** Wrapper */ +.wrapper { max-width: -webkit-calc(800px - (30px * 2)); max-width: calc(800px - (30px * 2)); margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; } + +@media screen and (max-width: 800px) { .wrapper { max-width: -webkit-calc(800px - (30px)); max-width: calc(800px - (30px)); padding-right: 15px; padding-left: 15px; } } + +/** Clearfix */ +.footer-col-wrapper:after, .wrapper:after { content: ""; display: table; clear: both; } + +/** Icons */ +.svg-icon { width: 16px; height: 16px; display: inline-block; fill: #828282; padding-right: 5px; vertical-align: text-top; } + +.social-media-list li + li { padding-top: 5px; } + +/** Tables */ +table { margin-bottom: 30px; width: 100%; text-align: left; color: #3f3f3f; border-collapse: collapse; border: 1px solid #e8e8e8; } + +table tr:nth-child(even) { background-color: #f7f7f7; } + +table th, table td { padding: 10px 15px; } + +table th { background-color: #f0f0f0; border: 1px solid #dedede; border-bottom-color: #c9c9c9; } + +table td { border: 1px solid #e8e8e8; } + +/** Site header */ +.site-header { border-top: 5px solid #424242; border-bottom: 1px solid #e8e8e8; min-height: 55.95px; position: relative; } + +.site-title { font-size: 26px; font-weight: 300; line-height: 54px; letter-spacing: -1px; margin-bottom: 0; float: left; } + +.site-title, .site-title:visited { color: #424242; } + +.site-nav { float: right; line-height: 54px; } + +.site-nav .nav-trigger { display: none; } + +.site-nav .menu-icon { display: none; } + +.site-nav .page-link { color: #111; line-height: 1.5; } + +.site-nav .page-link:not(:last-child) { margin-right: 20px; } + +@media screen and (max-width: 600px) { .site-nav { position: absolute; top: 9px; right: 15px; background-color: #fdfdfd; border: 1px solid #e8e8e8; border-radius: 5px; text-align: right; } .site-nav label[for="nav-trigger"] { display: block; float: right; width: 36px; height: 36px; z-index: 2; cursor: pointer; } .site-nav .menu-icon { display: block; float: right; width: 36px; height: 26px; line-height: 0; padding-top: 10px; text-align: center; } .site-nav .menu-icon > svg { fill: #424242; } .site-nav input ~ .trigger { clear: both; display: none; } .site-nav input:checked ~ .trigger { display: block; padding-bottom: 5px; } .site-nav .page-link { display: block; padding: 5px 10px; margin-left: 20px; } .site-nav .page-link:not(:last-child) { margin-right: 0; } } + +/** Site footer */ +.site-footer { border-top: 1px solid #e8e8e8; padding: 30px 0; } + +.footer-heading { font-size: 18px; margin-bottom: 15px; } + +.contact-list, .social-media-list { list-style: none; margin-left: 0; } + +.footer-col-wrapper { font-size: 15px; color: #828282; margin-left: -15px; } + +.footer-col { float: left; margin-bottom: 15px; padding-left: 15px; } + +.footer-col-1 { width: -webkit-calc(35% - (30px / 2)); width: calc(35% - (30px / 2)); } + +.footer-col-2 { width: -webkit-calc(20% - (30px / 2)); width: calc(20% - (30px / 2)); } + +.footer-col-3 { width: -webkit-calc(45% - (30px / 2)); width: calc(45% - (30px / 2)); } + +@media screen and (max-width: 800px) { .footer-col-1, .footer-col-2 { width: -webkit-calc(50% - (30px / 2)); width: calc(50% - (30px / 2)); } .footer-col-3 { width: -webkit-calc(100% - (30px / 2)); width: calc(100% - (30px / 2)); } } + +@media screen and (max-width: 600px) { .footer-col { float: none; width: -webkit-calc(100% - (30px / 2)); width: calc(100% - (30px / 2)); } } + +/** Page content */ +.page-content { padding: 30px 0; flex: 1; } + +.page-heading { font-size: 32px; } + +.post-list-heading { font-size: 28px; } + +.post-list { margin-left: 0; list-style: none; } + +.post-list > li { margin-bottom: 30px; } + +.post-meta { font-size: 14px; color: #828282; } + +.post-link { display: block; font-size: 24px; } + +/** Posts */ +.post-header { margin-bottom: 30px; } + +.post-title { font-size: 42px; letter-spacing: -1px; line-height: 1; } + +@media screen and (max-width: 800px) { .post-title { font-size: 36px; } } + +.post-content { margin-bottom: 30px; } + +.post-content h2 { font-size: 32px; } + +@media screen and (max-width: 800px) { .post-content h2 { font-size: 28px; } } + +.post-content h3 { font-size: 26px; } + +@media screen and (max-width: 800px) { .post-content h3 { font-size: 22px; } } + +.post-content h4 { font-size: 20px; } + +@media screen and (max-width: 800px) { .post-content h4 { font-size: 18px; } } + +/** Syntax highlighting styles */ +.highlight { background: #fff; } + +.highlighter-rouge .highlight { background: #eef; } + +.highlight .c { color: #998; font-style: italic; } + +.highlight .err { color: #a61717; background-color: #e3d2d2; } + +.highlight .k { font-weight: bold; } + +.highlight .o { font-weight: bold; } + +.highlight .cm { color: #998; font-style: italic; } + +.highlight .cp { color: #999; font-weight: bold; } + +.highlight .c1 { color: #998; font-style: italic; } + +.highlight .cs { color: #999; font-weight: bold; font-style: italic; } + +.highlight .gd { color: #000; background-color: #fdd; } + +.highlight .gd .x { color: #000; background-color: #faa; } + +.highlight .ge { font-style: italic; } + +.highlight .gr { color: #a00; } + +.highlight .gh { color: #999; } + +.highlight .gi { color: #000; background-color: #dfd; } + +.highlight .gi .x { color: #000; background-color: #afa; } + +.highlight .go { color: #888; } + +.highlight .gp { color: #555; } + +.highlight .gs { font-weight: bold; } + +.highlight .gu { color: #aaa; } + +.highlight .gt { color: #a00; } + +.highlight .kc { font-weight: bold; } + +.highlight .kd { font-weight: bold; } + +.highlight .kp { font-weight: bold; } + +.highlight .kr { font-weight: bold; } + +.highlight .kt { color: #458; font-weight: bold; } + +.highlight .m { color: #099; } + +.highlight .s { color: #d14; } + +.highlight .na { color: #008080; } + +.highlight .nb { color: #0086B3; } + +.highlight .nc { color: #458; font-weight: bold; } + +.highlight .no { color: #008080; } + +.highlight .ni { color: #800080; } + +.highlight .ne { color: #900; font-weight: bold; } + +.highlight .nf { color: #900; font-weight: bold; } + +.highlight .nn { color: #555; } + +.highlight .nt { color: #000080; } + +.highlight .nv { color: #008080; } + +.highlight .ow { font-weight: bold; } + +.highlight .w { color: #bbb; } + +.highlight .mf { color: #099; } + +.highlight .mh { color: #099; } + +.highlight .mi { color: #099; } + +.highlight .mo { color: #099; } + +.highlight .sb { color: #d14; } + +.highlight .sc { color: #d14; } + +.highlight .sd { color: #d14; } + +.highlight .s2 { color: #d14; } + +.highlight .se { color: #d14; } + +.highlight .sh { color: #d14; } + +.highlight .si { color: #d14; } + +.highlight .sx { color: #d14; } + +.highlight .sr { color: #009926; } + +.highlight .s1 { color: #d14; } + +.highlight .ss { color: #990073; } + +.highlight .bp { color: #999; } + +.highlight .vc { color: #008080; } + +.highlight .vg { color: #008080; } + +.highlight .vi { color: #008080; } + +.highlight .il { color: #099; } + +/*# sourceMappingURL=main.css.map */ \ No newline at end of file diff --git a/assets/main.css.map b/assets/main.css.map new file mode 100644 index 0000000..7e2a1b4 --- /dev/null +++ b/assets/main.css.map @@ -0,0 +1,20 @@ +{ + "version": 3, + "file": "main.css", + "sources": [ + "main.scss", + "vendor/bundle/ruby/2.7.0/gems/minima-2.5.1/_sass/minima.scss", + "vendor/bundle/ruby/2.7.0/gems/minima-2.5.1/_sass/minima/_base.scss", + "vendor/bundle/ruby/2.7.0/gems/minima-2.5.1/_sass/minima/_layout.scss", + "vendor/bundle/ruby/2.7.0/gems/minima-2.5.1/_sass/minima/_syntax-highlighting.scss" + ], + "sourcesContent": [ + "@import \"minima\";\n", + "@charset \"utf-8\";\n\n// Define defaults for each variable.\n\n$base-font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !default;\n$base-font-size: 16px !default;\n$base-font-weight: 400 !default;\n$small-font-size: $base-font-size * 0.875 !default;\n$base-line-height: 1.5 !default;\n\n$spacing-unit: 30px !default;\n\n$text-color: #111 !default;\n$background-color: #fdfdfd !default;\n$brand-color: #2a7ae2 !default;\n\n$grey-color: #828282 !default;\n$grey-color-light: lighten($grey-color, 40%) !default;\n$grey-color-dark: darken($grey-color, 25%) !default;\n\n$table-text-align: left !default;\n\n// Width of the content area\n$content-width: 800px !default;\n\n$on-palm: 600px !default;\n$on-laptop: 800px !default;\n\n// Use media queries like this:\n// @include media-query($on-palm) {\n// .wrapper {\n// padding-right: $spacing-unit / 2;\n// padding-left: $spacing-unit / 2;\n// }\n// }\n@mixin media-query($device) {\n @media screen and (max-width: $device) {\n @content;\n }\n}\n\n@mixin relative-font-size($ratio) {\n font-size: $base-font-size * $ratio;\n}\n\n// Import partials.\n@import\n \"minima/base\",\n \"minima/layout\",\n \"minima/syntax-highlighting\"\n;\n", + "/**\n * Reset some basic elements\n */\nbody, h1, h2, h3, h4, h5, h6,\np, blockquote, pre, hr,\ndl, dd, ol, ul, figure {\n margin: 0;\n padding: 0;\n}\n\n\n\n/**\n * Basic styling\n */\nbody {\n font: $base-font-weight #{$base-font-size}/#{$base-line-height} $base-font-family;\n color: $text-color;\n background-color: $background-color;\n -webkit-text-size-adjust: 100%;\n -webkit-font-feature-settings: \"kern\" 1;\n -moz-font-feature-settings: \"kern\" 1;\n -o-font-feature-settings: \"kern\" 1;\n font-feature-settings: \"kern\" 1;\n font-kerning: normal;\n display: flex;\n min-height: 100vh;\n flex-direction: column;\n}\n\n\n\n/**\n * Set `margin-bottom` to maintain vertical rhythm\n */\nh1, h2, h3, h4, h5, h6,\np, blockquote, pre,\nul, ol, dl, figure,\n%vertical-rhythm {\n margin-bottom: $spacing-unit / 2;\n}\n\n\n\n/**\n * `main` element\n */\nmain {\n display: block; /* Default value of `display` of `main` element is 'inline' in IE 11. */\n}\n\n\n\n/**\n * Images\n */\nimg {\n max-width: 100%;\n vertical-align: middle;\n}\n\n\n\n/**\n * Figures\n */\nfigure > img {\n display: block;\n}\n\nfigcaption {\n font-size: $small-font-size;\n}\n\n\n\n/**\n * Lists\n */\nul, ol {\n margin-left: $spacing-unit;\n}\n\nli {\n > ul,\n > ol {\n margin-bottom: 0;\n }\n}\n\n\n\n/**\n * Headings\n */\nh1, h2, h3, h4, h5, h6 {\n font-weight: $base-font-weight;\n}\n\n\n\n/**\n * Links\n */\na {\n color: $brand-color;\n text-decoration: none;\n\n &:visited {\n color: darken($brand-color, 15%);\n }\n\n &:hover {\n color: $text-color;\n text-decoration: underline;\n }\n\n .social-media-list &:hover {\n text-decoration: none;\n\n .username {\n text-decoration: underline;\n }\n }\n}\n\n\n/**\n * Blockquotes\n */\nblockquote {\n color: $grey-color;\n border-left: 4px solid $grey-color-light;\n padding-left: $spacing-unit / 2;\n @include relative-font-size(1.125);\n letter-spacing: -1px;\n font-style: italic;\n\n > :last-child {\n margin-bottom: 0;\n }\n}\n\n\n\n/**\n * Code formatting\n */\npre,\ncode {\n @include relative-font-size(0.9375);\n border: 1px solid $grey-color-light;\n border-radius: 3px;\n background-color: #eef;\n}\n\ncode {\n padding: 1px 5px;\n}\n\npre {\n padding: 8px 12px;\n overflow-x: auto;\n\n > code {\n border: 0;\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n\n\n/**\n * Wrapper\n */\n.wrapper {\n max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit} * 2));\n max-width: calc(#{$content-width} - (#{$spacing-unit} * 2));\n margin-right: auto;\n margin-left: auto;\n padding-right: $spacing-unit;\n padding-left: $spacing-unit;\n @extend %clearfix;\n\n @include media-query($on-laptop) {\n max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit}));\n max-width: calc(#{$content-width} - (#{$spacing-unit}));\n padding-right: $spacing-unit / 2;\n padding-left: $spacing-unit / 2;\n }\n}\n\n\n\n/**\n * Clearfix\n */\n%clearfix:after {\n content: \"\";\n display: table;\n clear: both;\n}\n\n\n\n/**\n * Icons\n */\n\n.svg-icon {\n width: 16px;\n height: 16px;\n display: inline-block;\n fill: #{$grey-color};\n padding-right: 5px;\n vertical-align: text-top;\n}\n\n.social-media-list {\n li + li {\n padding-top: 5px;\n }\n}\n\n\n\n/**\n * Tables\n */\ntable {\n margin-bottom: $spacing-unit;\n width: 100%;\n text-align: $table-text-align;\n color: lighten($text-color, 18%);\n border-collapse: collapse;\n border: 1px solid $grey-color-light;\n tr {\n &:nth-child(even) {\n background-color: lighten($grey-color-light, 6%);\n }\n }\n th, td {\n padding: ($spacing-unit / 3) ($spacing-unit / 2);\n }\n th {\n background-color: lighten($grey-color-light, 3%);\n border: 1px solid darken($grey-color-light, 4%);\n border-bottom-color: darken($grey-color-light, 12%);\n }\n td {\n border: 1px solid $grey-color-light;\n }\n}\n", + "/**\n * Site header\n */\n.site-header {\n border-top: 5px solid $grey-color-dark;\n border-bottom: 1px solid $grey-color-light;\n min-height: $spacing-unit * 1.865;\n\n // Positioning context for the mobile navigation icon\n position: relative;\n}\n\n.site-title {\n @include relative-font-size(1.625);\n font-weight: 300;\n line-height: $base-line-height * $base-font-size * 2.25;\n letter-spacing: -1px;\n margin-bottom: 0;\n float: left;\n\n &,\n &:visited {\n color: $grey-color-dark;\n }\n}\n\n.site-nav {\n float: right;\n line-height: $base-line-height * $base-font-size * 2.25;\n\n .nav-trigger {\n display: none;\n }\n\n .menu-icon {\n display: none;\n }\n\n .page-link {\n color: $text-color;\n line-height: $base-line-height;\n\n // Gaps between nav items, but not on the last one\n &:not(:last-child) {\n margin-right: 20px;\n }\n }\n\n @include media-query($on-palm) {\n position: absolute;\n top: 9px;\n right: $spacing-unit / 2;\n background-color: $background-color;\n border: 1px solid $grey-color-light;\n border-radius: 5px;\n text-align: right;\n\n label[for=\"nav-trigger\"] {\n display: block;\n float: right;\n width: 36px;\n height: 36px;\n z-index: 2;\n cursor: pointer;\n }\n\n .menu-icon {\n display: block;\n float: right;\n width: 36px;\n height: 26px;\n line-height: 0;\n padding-top: 10px;\n text-align: center;\n\n > svg {\n fill: $grey-color-dark;\n }\n }\n\n input ~ .trigger {\n clear: both;\n display: none;\n }\n\n input:checked ~ .trigger {\n display: block;\n padding-bottom: 5px;\n }\n\n .page-link {\n display: block;\n padding: 5px 10px;\n\n &:not(:last-child) {\n margin-right: 0;\n }\n margin-left: 20px;\n }\n }\n}\n\n\n\n/**\n * Site footer\n */\n.site-footer {\n border-top: 1px solid $grey-color-light;\n padding: $spacing-unit 0;\n}\n\n.footer-heading {\n @include relative-font-size(1.125);\n margin-bottom: $spacing-unit / 2;\n}\n\n.contact-list,\n.social-media-list {\n list-style: none;\n margin-left: 0;\n}\n\n.footer-col-wrapper {\n @include relative-font-size(0.9375);\n color: $grey-color;\n margin-left: -$spacing-unit / 2;\n @extend %clearfix;\n}\n\n.footer-col {\n float: left;\n margin-bottom: $spacing-unit / 2;\n padding-left: $spacing-unit / 2;\n}\n\n.footer-col-1 {\n width: -webkit-calc(35% - (#{$spacing-unit} / 2));\n width: calc(35% - (#{$spacing-unit} / 2));\n}\n\n.footer-col-2 {\n width: -webkit-calc(20% - (#{$spacing-unit} / 2));\n width: calc(20% - (#{$spacing-unit} / 2));\n}\n\n.footer-col-3 {\n width: -webkit-calc(45% - (#{$spacing-unit} / 2));\n width: calc(45% - (#{$spacing-unit} / 2));\n}\n\n@include media-query($on-laptop) {\n .footer-col-1,\n .footer-col-2 {\n width: -webkit-calc(50% - (#{$spacing-unit} / 2));\n width: calc(50% - (#{$spacing-unit} / 2));\n }\n\n .footer-col-3 {\n width: -webkit-calc(100% - (#{$spacing-unit} / 2));\n width: calc(100% - (#{$spacing-unit} / 2));\n }\n}\n\n@include media-query($on-palm) {\n .footer-col {\n float: none;\n width: -webkit-calc(100% - (#{$spacing-unit} / 2));\n width: calc(100% - (#{$spacing-unit} / 2));\n }\n}\n\n\n\n/**\n * Page content\n */\n.page-content {\n padding: $spacing-unit 0;\n flex: 1;\n}\n\n.page-heading {\n @include relative-font-size(2);\n}\n\n.post-list-heading {\n @include relative-font-size(1.75);\n}\n\n.post-list {\n margin-left: 0;\n list-style: none;\n\n > li {\n margin-bottom: $spacing-unit;\n }\n}\n\n.post-meta {\n font-size: $small-font-size;\n color: $grey-color;\n}\n\n.post-link {\n display: block;\n @include relative-font-size(1.5);\n}\n\n\n\n/**\n * Posts\n */\n.post-header {\n margin-bottom: $spacing-unit;\n}\n\n.post-title {\n @include relative-font-size(2.625);\n letter-spacing: -1px;\n line-height: 1;\n\n @include media-query($on-laptop) {\n @include relative-font-size(2.25);\n }\n}\n\n.post-content {\n margin-bottom: $spacing-unit;\n\n h2 {\n @include relative-font-size(2);\n\n @include media-query($on-laptop) {\n @include relative-font-size(1.75);\n }\n }\n\n h3 {\n @include relative-font-size(1.625);\n\n @include media-query($on-laptop) {\n @include relative-font-size(1.375);\n }\n }\n\n h4 {\n @include relative-font-size(1.25);\n\n @include media-query($on-laptop) {\n @include relative-font-size(1.125);\n }\n }\n}\n", + "/**\n * Syntax highlighting styles\n */\n.highlight {\n background: #fff;\n @extend %vertical-rhythm;\n\n .highlighter-rouge & {\n background: #eef;\n }\n\n .c { color: #998; font-style: italic } // Comment\n .err { color: #a61717; background-color: #e3d2d2 } // Error\n .k { font-weight: bold } // Keyword\n .o { font-weight: bold } // Operator\n .cm { color: #998; font-style: italic } // Comment.Multiline\n .cp { color: #999; font-weight: bold } // Comment.Preproc\n .c1 { color: #998; font-style: italic } // Comment.Single\n .cs { color: #999; font-weight: bold; font-style: italic } // Comment.Special\n .gd { color: #000; background-color: #fdd } // Generic.Deleted\n .gd .x { color: #000; background-color: #faa } // Generic.Deleted.Specific\n .ge { font-style: italic } // Generic.Emph\n .gr { color: #a00 } // Generic.Error\n .gh { color: #999 } // Generic.Heading\n .gi { color: #000; background-color: #dfd } // Generic.Inserted\n .gi .x { color: #000; background-color: #afa } // Generic.Inserted.Specific\n .go { color: #888 } // Generic.Output\n .gp { color: #555 } // Generic.Prompt\n .gs { font-weight: bold } // Generic.Strong\n .gu { color: #aaa } // Generic.Subheading\n .gt { color: #a00 } // Generic.Traceback\n .kc { font-weight: bold } // Keyword.Constant\n .kd { font-weight: bold } // Keyword.Declaration\n .kp { font-weight: bold } // Keyword.Pseudo\n .kr { font-weight: bold } // Keyword.Reserved\n .kt { color: #458; font-weight: bold } // Keyword.Type\n .m { color: #099 } // Literal.Number\n .s { color: #d14 } // Literal.String\n .na { color: #008080 } // Name.Attribute\n .nb { color: #0086B3 } // Name.Builtin\n .nc { color: #458; font-weight: bold } // Name.Class\n .no { color: #008080 } // Name.Constant\n .ni { color: #800080 } // Name.Entity\n .ne { color: #900; font-weight: bold } // Name.Exception\n .nf { color: #900; font-weight: bold } // Name.Function\n .nn { color: #555 } // Name.Namespace\n .nt { color: #000080 } // Name.Tag\n .nv { color: #008080 } // Name.Variable\n .ow { font-weight: bold } // Operator.Word\n .w { color: #bbb } // Text.Whitespace\n .mf { color: #099 } // Literal.Number.Float\n .mh { color: #099 } // Literal.Number.Hex\n .mi { color: #099 } // Literal.Number.Integer\n .mo { color: #099 } // Literal.Number.Oct\n .sb { color: #d14 } // Literal.String.Backtick\n .sc { color: #d14 } // Literal.String.Char\n .sd { color: #d14 } // Literal.String.Doc\n .s2 { color: #d14 } // Literal.String.Double\n .se { color: #d14 } // Literal.String.Escape\n .sh { color: #d14 } // Literal.String.Heredoc\n .si { color: #d14 } // Literal.String.Interpol\n .sx { color: #d14 } // Literal.String.Other\n .sr { color: #009926 } // Literal.String.Regex\n .s1 { color: #d14 } // Literal.String.Single\n .ss { color: #990073 } // Literal.String.Symbol\n .bp { color: #999 } // Name.Builtin.Pseudo\n .vc { color: #008080 } // Name.Variable.Class\n .vg { color: #008080 } // Name.Variable.Global\n .vi { color: #008080 } // Name.Variable.Instance\n .il { color: #099 } // Literal.Number.Integer.Long\n}\n" + ], + "names": [], + "mappings": "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" +} \ No newline at end of file diff --git a/assets/minima-social-icons.svg b/assets/minima-social-icons.svg new file mode 100644 index 0000000..fa7399f --- /dev/null +++ b/assets/minima-social-icons.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/cookies.html b/cookies.html new file mode 100644 index 0000000..ae73808 --- /dev/null +++ b/cookies.html @@ -0,0 +1,289 @@ + + + + + + + + + + + + + Giuseppe Silano - Cookies + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+

Cookies1

+ +
+ + + +

+ + The Italian Data Protection Authority issued guidelines for the use of cookies + in the web pages, by imposing that at the first access a banner allows the visitor to know about the web site cookies policy and to decide whether accepting them or not.

+ +

+ + In this page you will find detailed information about the used cookies.

+ +
+ + + +
    +
  1. +

    + + What are cookies? +
    + Cookies are text files that web sites send to the user browser and that are saved on the user device and then resent at the next visit.

    +
  2. +
  3. +

    + + Which is the aim of cookie?
    + They are used to monitor sessions, to authenticate the user without asking continuously the account information, and so on.

    +
  4. +
  5. +

    + + What are technical cookies?
    + Technical cookies are used for making easier the user navigation and access (e.g., to avoid continuous authentications).

    +
  6. +
  7. +

    + + What are profiling cookies?
    + Profiling cookies are used for tracing the user navigation and making profiles of her preferences/interest. They are mostly used for advertisement purposes.

    +
  8. +
+ +
+ +

Cookies in this web site

+ +

+ + Google Analytics cookies: this web site uses some Google Analytics plugins that can trace information of the user. They are used only for collecting information like the type of used browser, + the browser screen resolution, the country of the user, the visited pages and downloaded files. No user profiling occurs due also to the fact that the Google Analytics plugin + settings are such that the IP addresses are anonymized. For further information you could visit the cookie policy + web page of Google Analytics.

+ +
+ +

Anonymous navigation

+ +

+ + Main browsers allow to disable cookies savings and to make anonymous the user navigation. Detailed instructions are available at the browsers technical support web pages:

+ + + +
+ +
+
    +
  1. +

    + + Here you can find the Wikipedia description of cookies +

    +
  2. +
+
+ +
+
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+ + + diff --git a/css/cover.css b/css/cover.css new file mode 100755 index 0000000..6f8348d --- /dev/null +++ b/css/cover.css @@ -0,0 +1,321 @@ +/* + * Globals + */ + +/* Links */ +a, +a:focus, +a:hover { + color: #007; +} + +/* Custom default button */ +.btn-default, +.btn-default:hover, +.btn-default:focus { + color: #333; + text-shadow: none; /* Prevent inheritance from `body` */ + background-color: #ddd; + border: 1px solid #555; +} + + +/* + * Base structure + */ + +html, +body { + height: 100%; + background-color: #fff; +} +body { + color: #000; + text-align: center; + text-shadow: 0 1px 3px rgba(0,0,0,.0); + font-family: 'Noto Serif JP', sans-serif; +} + +/* Trying to replicate medium.com posts */ +div.medium-style { + line-height: 1.7; + font-size:18.5px; + /* text-align: justify; */ +} + +p { margin-bottom: 1em; } + +/* Extra markup and styles for table-esque vertical and horizontal centering */ +.site-wrapper { + display: table; + width: 100%; + height: 100%; /* For at least Firefox */ + min-height: 100%; + -webkit-box-shadow: inset 0 0 100px rgba(0,0,0,.1); + box-shadow: inset 0 0 100px rgba(0,0,0,.1); +} +.site-wrapper-inner { + display: table-cell; + vertical-align: top; +} +.cover-container { + margin-right: auto; + margin-left: auto; + text-align: left; /* added by me, used to be centered */ +} + +/* Padding for spacing */ +.inner { + padding: 20px; +} + + +/* + * Header + */ +.masthead-brand { + margin-top: 10px; + margin-bottom: 10px; +} + +.masthead-nav > li { + display: inline-block; +} +.masthead-nav > li + li { + margin-left: 20px; +} +.masthead-nav > li > a { + padding-right: 0; + padding-left: 0; + font-size: 16px; + font-weight: bold; + color: #fff; /* IE8 proofing */ + color: rgba(1,1,1,.5); + border-bottom: 2px solid transparent; +} +.masthead-nav > li > a:hover, +.masthead-nav > li > a:focus { + background-color: transparent; + border-bottom-color: #a9a9a9; + border-bottom-color: rgba(255,255,255,.25); +} +.masthead-nav > .active > a, +.masthead-nav > .active > a:hover, +.masthead-nav > .active > a:focus { + color: #333; + border-bottom-color: #fff; +} + +@media (min-width: 768px) { + .masthead-brand { + float: left; + } + .masthead-nav { + float: right; + } +} + + +/* + * Cover + */ + +.cover { + padding: 0 20px; +} +.cover .btn-lg { + padding: 10px 20px; + font-weight: bold; +} + + +/* + * Footer + */ +.mastfoot { + color: #999; /* IE8 proofing */ + color: rgba(10,10,10,.0.6); +} + +/* + * make the links grey in footer + */ +.mastfoot a { + color: #777 +} + + +/* + * Affix and center + */ + +@media (min-width: 768px) { + /* Pull out the header and footer */ + .masthead { + position: float; + top: 0; + } + .mastfoot { + position: float; + bottom: 0; + } + /* Start the vertical centering */ + .site-wrapper-inner { + vertical-align: top; + } + /* Handle the widths */ + .masthead, + .mastfoot, + .cover-container { + width: 100%; /* Must be percentage or pixels for horizontal alignment */ + } +} + +@media (min-width: 992px) { + .masthead, + .mastfoot, + .cover-container { + width: 1100px; + } +} + + +/* https://stackoverflow.com/questions/34984737/display-a-different-logo-on-mobile-and-desktop */ +/* when screen is less than 600px wide + show mobile version and hide desktop */ +@media (max-width: 600px) { + .desktop { + display: none; + } +} + + + + +.saturate {-webkit-filter: saturate(3); filter: saturate(3);} +.grayscale {-webkit-filter: grayscale(100%); filter: grayscale(100%);} +.contrast {-webkit-filter: contrast(160%); filter: contrast(160%);} +.brightness {-webkit-filter: brightness(0.25); filter: brightness(0.25);} +.blur {-webkit-filter: blur(3px); filter: blur(3px);} +.invert {-webkit-filter: invert(100%); filter: invert(100%);} +.sepia {-webkit-filter: sepia(100%); filter: sepia(100%);} +.huerotate {-webkit-filter: hue-rotate(180deg); filter: hue-rotate(180deg);} +.rss.opacity {-webkit-filter: opacity(40%); filter: opacity(40%);} + +span { + display: inline-block; + vertical-align: middle; + line-height: normal; +} + +.vidstylepadding { + padding-right: 2px; + padding-left: 2px; + padding-top: 2px; + padding-bottom: 2px; +} + + +div.small { + font-size: small; + font-variant: small-caps; +} + +.button0 { + background-color: #73553c; + border: none; + color: white; + padding: 4px 8px; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 10px; + font-weight: bold; + margin: 2px 1px; + cursor: pointer; + border-radius: 5px; +} + +.button1 { + background-color: #DC143C; + border: none; + color: white; + padding: 4px 8px; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 10px; + font-weight: bold; + margin: 2px 1px; + cursor: pointer; + border-radius: 5px; +} + +.button2 { + background-color: #4CAF50; + border: none; + color: white; + padding: 4px 8px; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 10px; + font-weight: bold; + margin: 2px 1px; + cursor: pointer; + border-radius: 5px; +} + +.button3 { + background-color: #65bdde; + border: none; + color: white; + padding: 4px 8px; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 10px; + font-weight: bold; + margin: 2px 1px; + cursor: pointer; + border-radius: 5px; +} + +.button4 { + background-color: #FF6600; + border: none; + color: white; + padding: 4px 8px; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 10px; + font-weight: bold; + margin: 2px 1px; + cursor: pointer; + border-radius: 5px; +} + +.button5 { + background-color: #40ff00; + border: none; + color: white; + padding: 4px 8px; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 10px; + font-weight: bold; + margin: 2px 1px; + cursor: pointer; + border-radius: 5px; +} + + + + + + + + + diff --git a/css/video.css b/css/video.css new file mode 100644 index 0000000..090c347 --- /dev/null +++ b/css/video.css @@ -0,0 +1,29 @@ +.video { + margin-bottom: 50px; +} + +.video h2 { + font-size: 1.2rem; + margin-bottom: 10px; +} + +.video-container { + position: relative; + padding-bottom: 56.25%; + height: 0; + overflow: hidden; +} + +.video-container iframe { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} + +.video-gallery { + display: grid; + grid-template-columns: repeat(2, 1fr); + grid-gap: 20px; +} diff --git a/cv.html b/cv.html new file mode 100644 index 0000000..4aceac0 --- /dev/null +++ b/cv.html @@ -0,0 +1,276 @@ + + + + + + + + + + + + + Giuseppe Silano - CV + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+ +

+ + Download the most recent version of my CV here. +

+ +

Short biography

+ +

+ + I was born in Benevento, Italy, in 1989. I received the bachelor’s degree in computer engineering (2012), the master’s degree in electronic + engineering (2016), and the doctorate in information engineering (2020) from the University of Sannio, + Benevento, Italy. From May to November 2016, I joined the automatic control group (GRACE) as a research fellow at the same university. During my + doctorate, I worked on the use of software-in-the-loop methodologies for the analysis and control design of small UAV systems, under the supervision + of Prof. Dr. Luigi Iannelli. From March to November 2019, I was a + visiting Ph.D. student at LAAS - CNRS, in Toulouse, working with Prof. Dr. + Antonio Franchi and his team. From June 2020 to July 2022, I was a post-doctoral research fellow at the Czech Technical University in Prague, + working with the Multi-robot System (MRS) Group together with Prof. Dr. Martin Saska. From November 17 to November 30, 2022, I was a visiting researcher at the University + of Twente together with the RAM group and Prof. + Dr. Antonio Franchi. Currently, I am a tenured researcher at the Ricerca sul Sistema Energetico (RSE) + S.p.A., a publicly controlled research organization, with the Department of Power Generation Technologies and Materials, and an associated researcher with + the Multi-robot System (MRS) Group working with Prof. Dr. Martin Saska. I serve as associate editor for the International Conference + on Unmanned Aircraft Systems (ICUAS) and the Mediterranean Conference on Control and Automation (MED). + My research interests are in simulation, control and motion planning problems for unmanned aerial vehicles, autonomous vehicles, formal methods in control and automation, human-robot + collaboration, communication-aware robotics, model predictive control techniques, nonlinear optimization, and robot manipulators.

+ +
+

Education

+ +

+ + PhD in Information Technologies for Engineering (curriculum in Automatic Control), November 2020
+ Additional mention of + Doctor Europaeus
+ Thesis title: “Software-in-the-loop methodologies for the analysis and control design of small UAV systems”
+ University of Sannio in Benevento, Benevento, Italy
+ Advisor: Prof. Dr. Luigi Iannelli

+ +

+ + Master Degree in Electronic Engineering (curriculum in Automatic Control), March 2016
+ Thesis title: “Development of a simulator aimed to detect and track moving objects for UAVs”
+ University of Sannio in Benevento, Benevento, Italy
+ Advisor: Prof. Dr. Luigi Iannelli

+ +

+ + Bachelor Degree in Computer Engineering (curriculum in Automatic Control), July 2012
+ Thesis title: “An Object Oriented approach aimed to the creation of control software for industrial processes”
+ University of Sannio in Benevento, Benevento, Italy
+ Advisors: Prof. Dr. Luigi Iannelli and Eng. Paolo Rubino

+ +
+

Publications

+ +

+ + (see my publications page for an up-to-date list)

+ +
+

Professional Affiliations

+ +
    + +
  • Member, Institute of Electrical and Electronic Engineers (IEEE), Student Member (S'17), Member (M'21) +
      +

      +

    • IEEE Control Systems Society
    • +

    • IEEE Robotics and Automation Society
    • +

    +
  • +
+ +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+ + + diff --git a/favicon.png b/favicon.png new file mode 100755 index 0000000..32fe22c Binary files /dev/null and b/favicon.png differ diff --git a/feed.xml b/feed.xml new file mode 100644 index 0000000..fad90a7 --- /dev/null +++ b/feed.xml @@ -0,0 +1 @@ +Jekyll2024-04-01T15:42:08+00:00http://giuseppesilano.net/feed.xmlGiuseppe SilanoPersonal website of Giuseppe Silano \ No newline at end of file diff --git a/files/cookies-enabler.js b/files/cookies-enabler.js new file mode 100755 index 0000000..f27e310 --- /dev/null +++ b/files/cookies-enabler.js @@ -0,0 +1,449 @@ +// Made with milk and cookies by Nicholas Ruggeri and Gianmarco Simone +// https://github.com/nicholasruggeri/cookies-enabler +// https://github.com/nicholasruggeri +// https://github.com/gsimone + +window.COOKIES_ENABLER = window.COOKIES_ENABLER || (function () { + + 'use strict' + + var defaults = { + + scriptClass: 'ce-script', + iframeClass: 'ce-iframe', + + acceptClass: 'ce-accept', + disableClass: 'ce-disable', + dismissClass: 'ce-dismiss', + + bannerClass: 'ce-banner', + bannerHTML: + + document.getElementById('ce-banner-html') !== null ? + + document.getElementById('ce-banner-html').innerHTML : + + '

This website uses cookies. ' + +'' + +'Enable Cookies' + +'' + +'

', + eventScroll: false, + scrollOffset: 200, + clickOutside: false, + cookieName: 'ce-cookie', + cookieDuration: '365', + + iframesPlaceholder: true, + iframesPlaceholderHTML: + + document.getElementById('ce-iframePlaceholder-html') !== null ? + + document.getElementById('ce-iframePlaceholder-html').innerHTML : + + '

To view this content you need to' + +'Enable Cookies' + +'

', + + iframesPlaceholderClass: 'ce-iframe-placeholder', + + onEnable: '', + onDismiss: '', + onDisable: '' + + }, + opts, domElmts, start_Y; + + function _extend() { + + var i, key; + for (i=1; i -1; + } + + var handleScroll = function() { + + if (Math.abs(window.pageYOffset - start_Y) > opts.scrollOffset) enableCookies(); + + }; + + var bindUI = function() { + + domElmts = { + accept: document.getElementsByClassName(opts.acceptClass), + disable: document.getElementsByClassName(opts.disableClass), + banner: document.getElementsByClassName(opts.bannerClass), + dismiss: document.getElementsByClassName(opts.dismissClass) + } + + var i, + accept = domElmts.accept, + accept_l = accept.length, + disable = domElmts.disable, + disable_l = disable.length, + dismiss = domElmts.dismiss, + dismiss_l = dismiss.length; + + if (opts.eventScroll) { + window.addEventListener('load', function(){ + + start_Y = window.pageYOffset; + window.addEventListener('scroll', handleScroll); + + }); + } + + if (opts.clickOutside) { + + document.addEventListener("click", function(e){ + + var element = e.target; + + // ignore the click if it is inside of any of the elements created by this plugin + if( + _getClosestParentWithClass(element, opts.iframesPlaceholderClass) || + _getClosestParentWithClass(element, opts.disableClass) || + _getClosestParentWithClass(element, opts.bannerClass) || + _getClosestParentWithClass(element, opts.dismissClass) || + _getClosestParentWithClass(element, opts.disableClass) + ){ + return false; + } + + enableCookies(); + + }); + } + + for (i = 0; i < accept_l; i++) { + + accept[i].addEventListener("click", function(ev) { + ev.preventDefault(); + enableCookies(ev); + }); + + } + + for (i = 0; i < disable_l; i++) { + + disable[i].addEventListener("click", function(ev) { + ev.preventDefault(); + disableCookies(ev); + }); + + } + + for (i = 0; i < dismiss_l; i++) { + + dismiss[i].addEventListener("click", function (ev) { + ev.preventDefault(); + banner.dismiss(); + }); + + } + + }; + + var init = function(options) { + + opts = _extend({}, defaults, options); + + if (cookie.get() == 'Y') { + + if (typeof opts.onEnable === "function") opts.onEnable(); + + scripts.get(); + iframes.get(); + + } else if (cookie.get() == 'N'){ + + if (typeof opts.onDisable === "function") opts.onDisable(); + + iframes.hide(); + bindUI(); + + } else { + + banner.create(); + iframes.hide(); + bindUI(); + + } + }; + + var enableCookies = _debounce(function(event) { + + if (typeof event != "undefined" && event.type === 'click'){ + + event.preventDefault(); + + } + + if (cookie.get() != 'Y') { + + cookie.set(); + scripts.get(); + + iframes.get(); + iframes.removePlaceholders(); + + banner.dismiss(); + window.removeEventListener('scroll', handleScroll); + + if (typeof opts.onEnable === "function") opts.onEnable(); + + } + + }, 250, false); + + var disableCookies = function(event){ + + if (typeof event != "undefined" && event.type === 'click'){ + + event.preventDefault(); + + } + + if (cookie.get() != 'N'){ + + cookie.set('N'); + + banner.dismiss(); + window.removeEventListener('scroll', handleScroll); + + if (typeof opts.onDisable === "function") opts.onDisable(); + + } + + } + + var banner = (function() { + + function create() { + + var el = '
' + + opts.bannerHTML + +'
'; + + document.body.insertAdjacentHTML('beforeend', el); + + } + + function dismiss(){ + + domElmts.banner[0].style.display = 'none'; + + if (typeof opts.onDismiss === "function") opts.onDismiss(); + + } + + return{ + + create: create, + dismiss: dismiss + + } + + })(); + + var cookie = (function() { + + function set(val){ + + var value = typeof val !== "undefined" ? val : "Y", + date, expires; + + if (opts.cookieDuration) { + date = new Date(); + date.setTime(date.getTime()+(opts.cookieDuration*24*60*60*1000)); + expires = "; expires="+date.toGMTString(); + } else { + expires = ""; + } + document.cookie = opts.cookieName +"="+ value+expires +"; path=/"; + } + + function get(){ + + var cookies = document.cookie.split(";"), + l = cookies.length, + i, x, y; + + for (i = 0; i < l; i++){ + x = cookies[i].substr(0,cookies[i].indexOf("=")); + y = cookies[i].substr(cookies[i].indexOf("=")+1); + x = x.replace(/^\s+|\s+$/g,""); + if (x == opts.cookieName) { + return unescape(y); + } + } + + } + + return{ + set: set, + get: get + } + + })(); + + var iframes = (function() { + + function makePlaceholder(iframe) { + + var placeholderElement = document.createElement('div'); + + placeholderElement.className = opts.iframesPlaceholderClass; + + placeholderElement.innerHTML = opts.iframesPlaceholderHTML; + + iframe.parentNode.insertBefore(placeholderElement, iframe); + + } + + function removePlaceholders() { + + var iframePlaceholders = document.getElementsByClassName(opts.iframesPlaceholderClass), + n = iframePlaceholders.length, + i; + + for (i = n - 1; i >= 0; i--){ + + iframePlaceholders[i].remove(); + + } + + } + + function hide() { + + var iframes = document.getElementsByClassName(opts.iframeClass), + n = iframes.length, + src, iframe, i; + + for (i = 0; i < n; i++){ + + iframe = iframes[i]; + iframe.style.display = 'none'; + + if (opts.iframesPlaceholder) makePlaceholder(iframe); + + } + + } + + function get() { + + var iframes = document.getElementsByClassName(opts.iframeClass), + n = iframes.length, + src, iframe, i; + + for (i = 0; i < n; i++){ + + iframe = iframes[i]; + + src = iframe.attributes[ 'data-ce-src' ].value; + iframe.src = src; + iframe.style.display = 'block'; + + } + + } + + return{ + hide: hide, + get: get, + removePlaceholders: removePlaceholders + } + + })(); + + var scripts = (function() { + + function get() { + + var scripts = document.getElementsByClassName(opts.scriptClass), + n = scripts.length, + documentFragment = document.createDocumentFragment(), + i, y, s, attrib, el; + + for (i = 0; i < n; i++){ + + if (scripts[i].hasAttribute('data-ce-src')){ + + if (typeof postscribe === "undefined"){ + postscribe(scripts[i].parentNode, ''); + } + + } else { + + s = document.createElement('script'); + s.type = 'text/javascript'; + for (y = 0; y < scripts[i].attributes.length; y++) { + attrib = scripts[i].attributes[y]; + if (attrib.specified) { + if ((attrib.name != 'type') && (attrib.name != 'class')){ + s.setAttribute(attrib.name, attrib.value); + } + } + } + s.innerHTML = scripts[i].innerHTML; + documentFragment.appendChild(s); + + } + + } + + document.body.appendChild(documentFragment); + + } + + return{ + get: get + } + + })(); + + + return { + init: init, + enableCookies: enableCookies, + dismissBanner: banner.dismiss + }; + +}()); diff --git a/files/cv_web.pdf b/files/cv_web.pdf new file mode 100644 index 0000000..8258453 Binary files /dev/null and b/files/cv_web.pdf differ diff --git a/files/pleaserotate.js b/files/pleaserotate.js new file mode 100755 index 0000000..f37bdd5 --- /dev/null +++ b/files/pleaserotate.js @@ -0,0 +1,277 @@ +(function(){ + var PleaseRotate = {}, + currentOrientation = null, + isMobile = /Android|iPhone|iPad|iPod|IEMobile|Opera Mini/i.test(navigator.userAgent), + init = false; + + var options = { + startOnPageLoad: true, + onHide: function(){}, + onShow: function(){}, + forcePortrait: false, + message: "Please Rotate Your Device", + subMessage: "(or click to continue)", + allowClickBypass: true, + onlyMobile: true, + zIndex: 1000, + iconNode: null + }; + + var cssRules = [ + "#pleaserotate-graphic { margin-left: 50px; width: 200px; animation: pleaserotateframes ease 2s; animation-iteration-count: infinite; transform-origin: 50% 50%; -webkit-animation: pleaserotateframes ease 2s; -webkit-animation-iteration-count: infinite; -webkit-transform-origin: 50% 50%; -moz-animation: pleaserotateframes ease 2s; -moz-animation-iteration-count: infinite; -moz-transform-origin: 50% 50%; -ms-animation: pleaserotateframes ease 2s; -ms-animation-iteration-count: infinite; -ms-transform-origin: 50% 50%; }", + "#pleaserotate-backdrop { background-color: white; top: 0; left: 0; position: fixed; width: 100%; height: 100%; }", + "#pleaserotate-container { width: 300px; position: absolute; top: 50%; left: 50%; margin-right: -50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); }", + "#pleaserotate-message { margin-top: 20px; font-size: 1.3em; text-align: center; font-family: Verdana, Geneva, sans-serif; text-transform: uppercase }", + "#pleaserotate-message small { opacity: .5; display: block; font-size: .6em}" + ]; + + var cssKeyframeRules = [ + "pleaserotateframes{ 0% { transform: rotate(0deg) ; -moz-transform: rotate(0deg) ;-webkit-transform: rotate(0deg) ;-ms-transform: rotate(0deg) ;} 49% { transform: rotate(-90deg) ;-moz-transform: rotate(-90deg) ;-webkit-transform: rotate(-90deg) ; -ms-transform: rotate(-90deg) ; } 100% { transform: rotate(90deg) ;-moz-transform: rotate(-90deg) ;-webkit-transform: rotate(-90deg) ; -ms-transform: rotate(-90deg) ; } }", + ]; + + /* private functions */ + + function overrideOptions(updates){ + var prop; + for (var prop in updates){ + options[prop] = updates[prop]; + } + } + + function setBodyClass(state){ + if(document.documentElement){ + document.documentElement.className = document.documentElement.className.replace( /(?:^|\s)pleaserotate-\S*/g , '' ); + document.documentElement.className += " pleaserotate-" + state; + } + } + + function addRules(sheet){ + + var i; + + for(i = 0; i< cssRules.length; i++){ + sheet.insertRule(cssRules[i], 0); + } + + sheet.insertRule("#pleaserotate-backdrop { z-index: " + options.zIndex + "}", 0); + + if(options.allowClickBypass){ + sheet.insertRule("#pleaserotate-backdrop { cursor: pointer }", 0); + } + + if(options.forcePortrait){ + sheet.insertRule("#pleaserotate-backdrop { -webkit-transform-origin: 50% }", 0); + + } + + for(i = 0; i< cssKeyframeRules.length; i++){ + if (CSSRule.WEBKIT_KEYFRAMES_RULE) { // WebKit + sheet.insertRule("@-webkit-keyframes " + cssKeyframeRules[i], 0); + } + else if (CSSRule.MOZ_KEYFRAMES_RULE) { // Mozilla + sheet.insertRule("@-moz-keyframes " + cssKeyframeRules[i], 0); + } + else if (CSSRule.KEYFRAMES_RULE) { // W3C + sheet.insertRule("@keyframes " + cssKeyframeRules[i], 0); + } + } + + } + + function createStyleSheet(){ + var style = document.createElement("style"); + style.appendChild(document.createTextNode("")); // I'm told we need this hack... something to do with safari but I don't feel like checking for sure + document.head.insertBefore(style, document.head.firstChild); + addRules(style.sheet); + } + + function createElements(){ + var backdrop = document.createElement("div"), + container = document.createElement("div"), + message = document.createElement("div"), + subMessage = document.createElement("small"); + + backdrop.setAttribute("id", "pleaserotate-backdrop"); + container.setAttribute("id", "pleaserotate-container"); + message.setAttribute("id", "pleaserotate-message"); + + backdrop.appendChild(container); + + if(options.iconNode !== null){ + container.appendChild(options.iconNode); + } else { + container.appendChild(createPhoneSVG()); + } + + container.appendChild(message); + message.appendChild(document.createTextNode(options.message)); + subMessage.appendChild(document.createTextNode(options.subMessage)); + + message.appendChild(subMessage); + + document.body.appendChild(backdrop); + + } + + function createPhoneSVG(){ + var svg = document.createElementNS('http://www.w3.org/2000/svg','svg'); + svg.setAttributeNS('http://www.w3.org/2000/xmlns/','xmlns:xlink','http://www.w3.org/1999/xlink'); + svg.setAttribute('id','pleaserotate-graphic'); + svg.setAttribute('viewBox','0 0 250 250'); + + var group = document.createElementNS('http://www.w3.org/2000/svg','g'); + group.setAttribute('id','pleaserotate-graphic-path'); + + if(options.forcePortrait){ + group.setAttribute('transform','rotate(-90 125 125)'); + } + + var path = document.createElementNS('http://www.w3.org/2000/svg', 'path'); + path.setAttribute('d', 'M190.5,221.3c0,8.3-6.8,15-15,15H80.2c-8.3,0-15-6.8-15-15V28.7c0-8.3,6.8-15,15-15h95.3c8.3,0,15,6.8,15,15V221.3z' + + 'M74.4,33.5l-0.1,139.2c0,8.3,0,17.9,0,21.5c0,3.6,0,6.9,0,7.3c0,0.5,0.2,0.8,0.4,0.8s7.2,0,15.4,0h75.6c8.3,0,15.1,0,15.2,0' + + 's0.2-6.8,0.2-15V33.5c0-2.6-1-5-2.6-6.5c-1.3-1.3-3-2.1-4.9-2.1H81.9c-2.7,0-5,1.6-6.3,4C74.9,30.2,74.4,31.8,74.4,33.5z' + + 'M127.7,207c-5.4,0-9.8,5.1-9.8,11.3s4.4,11.3,9.8,11.3s9.8-5.1,9.8-11.3S133.2,207,127.7,207z'); + svg.appendChild(group); + group.appendChild(path); + + return svg; + } + + function setVisibility(visible){ + var backdropElement = document.getElementById("pleaserotate-backdrop"); + + if(visible){ + if(backdropElement){ + backdropElement.style["display"] = "block"; + } + } else { + if(backdropElement){ + backdropElement.style["display"] = "none"; + + } + } + } + + function orientationChanged(){ + var triggerOn = currentOrientation && !options.forcePortrait || !currentOrientation && options.forcePortrait, + propogate; + + if(triggerOn){ + propogate = options.onShow(); + setBodyClass("showing"); + } else { + propogate = options.onHide(); + setBodyClass("hiding"); + } + + + if(propogate !== undefined && !propogate){ + return; + } + + PleaseRotate.Showing = triggerOn; + + setVisibility(triggerOn); + + } + + function isPortrait(){ + return ( window.innerWidth < window.innerHeight); + } + + function checkOrientationChange(){ + if(!isMobile && options.onlyMobile){ + if(!init){ + init = true; + setVisibility(false); + setBodyClass("hiding"); + options.onHide(); // run this exactly once if not mobile + } + return; + } + + if(currentOrientation !== isPortrait()){ + currentOrientation = isPortrait(); + orientationChanged(); + } + } + + /* public functions */ + + PleaseRotate.start = function(opts){ + if(!document.body){ + window.addEventListener('load', PleaseRotate.start.bind(null, opts), false); + return; + } + + if(opts){ + overrideOptions(opts); + } + + createStyleSheet(); + createElements(); + checkOrientationChange(); + window.addEventListener( 'resize', checkOrientationChange, false ); + + if(options.allowClickBypass){ + document.getElementById("pleaserotate-backdrop").addEventListener("click", function(){ + var propogate = options.onHide(); + setBodyClass("hiding"); + PleaseRotate.Showing = false; + + if(propogate === undefined || propogate){ + setVisibility(false); + } + }); + } + } + + PleaseRotate.stop = function(){ + window.removeEventListener('resize', onWindowResize, false); + } + + PleaseRotate.onShow = function(fn){ + options.onShow = fn; + + if(init){ + // if we have already been initialized, force a check + init = false; + currentOrientation = null; + checkOrientationChange(); + } + }; + + PleaseRotate.onHide = function(fn){ + options.onHide = fn; + + if(init){ + // if we have already been initialized, force a check so that onHide gets called + currentOrientation = null; + init = false; + checkOrientationChange(); + } + }; + + PleaseRotate.Showing = false; + + /* plumbing to support AMD, CommonJS, or Globals */ + + if (typeof define === 'function' && define.amd) { + setBodyClass("initialized"); + define(['PleaseRotate'], function() { + return PleaseRotate; + }); + } else if (typeof exports === 'object') { + setBodyClass("initialized"); + module.exports = PleaseRotate; + } else { + setBodyClass("initialized"); + window.PleaseRotate = PleaseRotate; + overrideOptions(window.PleaseRotateOptions); + + if (options.startOnPageLoad) { + PleaseRotate.start(); + } + } + +})(); \ No newline at end of file diff --git a/highlights.html b/highlights.html new file mode 100644 index 0000000..b2eb784 --- /dev/null +++ b/highlights.html @@ -0,0 +1,367 @@ + + + + + + + + + + + + + Giuseppe Silano - Highlights + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+ +

+ + 21 February 2024, News
+ Appointed as Early Career Editorial Board Member in Biomimetic Intelligence and Robotics (BIRob). +

+ +

+ + 21 December 2023, News
+ Organazing an invited session proposal on "Aerial Robotics in + Inspection and Maintenance Operations - From Design to Deployment" at the 2024 International Conference on Unmanned Aircraft + Systems (ICUAS), Chania, Crete, Greece. +

+ +

+ + 29 July 2023, News
+ Organazing a special issue on advanced control and path planning techniques for UAVs on + MPDI Machines +

+ +

+ + 1 April 2023, Paper
+ 2 conference papers have been accepted for publication at the 2023 International Conference on Unmanned Aircraft Systems (ICUAS). More info is available + on Publications. +

+ +

+ + 21 December 2022, Workshops
+ Workshop session on "The Role of Robotics Simulators for Unmanned Aerial Vehicles" accepted to be held at the + 2023 IEEE International Conference on Robotics and Automation. Here is the link to the video recording. +

+ +

+ + 17 November 2022, News
+ Visiting researcher at the University of Twente for two weeks (November 17 - November 30) together with + the RAM group and Prof. Dr. + Antonio Franchi. +

+ +

+ + 8 August 2022, News
+ I've been appointed as member of the IEEE Robotics and Automation Society (RAS) Technical Committee on Multi-Robot + Systems. +

+ +

+ + 11 July 2022, News
+ I started a new tenured research position at the Ricerca sul Sistema Energetico (RSE) S.p.A.. This makes me sad because I had to leave + the Multi-robot System (MRS) Group where I spent the last two years, but on the other hand I am excited about the new + adventure that I have just started. +

+ +

+ + 6 May 2022, Paper
+ 3 conference papers have been accepted for publication at the 2022 International Conference on Unmanned Aircraft Systems (ICUAS). More info is available + on Publications. +

+ +

+ + 18 April 2021, Paper
+ 2 conference papers have been accepted for publication at the 2021 International Conference on Unmanned Aircraft Systems (ICUAS). More info is available + on Publications. +

+ +

+ + 10 November 2020, News
+ Today, I defended my thesis and got my PhD in Information Engineering. Thank you all for your support over the years. + Here is the link to my PhD Thesis. +

+ +

+ + 10 September 2020, News
+ At the 2020 edition of Automatica.it (the Italian Workshop on Automatic Control) + I presented my idea of a framework for a multi-robot system for power line inspection tasks starting from Signal Temporal Logic specifications. + Here is the link to my talk. +

+ +

+ + 16 July 2020, News
+ The UniSannio team is the winner of the + + MathWorks Minidrone Competition at IFAC 2020. On 16th July 2020 Mario Terlizzi, Muhammad Aatif, Amin Basiri, + and Luigi Russo (virtually) competed with the other finalist teams, by proposing their own controller for the + Parrot Mambo drone that has to fulfill a lane following task using its on-board camera. Congratulations, to whole + UniSannio team!! :-) I am glad to have helped the team achieve this important result. +

+ +

+ + 15 June 2020, News
+ From June 2020, I am a Postdoctoral research fellow at the Czech Technical University (CTU) in Prague working with + Martin Saska and his team. More information + about the research activities, projects and publications are available on the + group website. +

+ +

+ + 31 January 2020, Software
+ MAT-Fly: an easy to use virtual reality environment based on the MathWorks Virtual Reality (VR) toolbox + aimed to simulate flying platforms together with detection and tracking algorithms + (code, + pdf, + poster, + video). +

+ +

+ + 1 December 2019, News
+ From March to November 2019, I was a visiting PhD student at LAAS-CNRS in Toulouse working with + Antonio Franchi + and his team. During my period abroad, I was among the participants of the Mohammed Bin Zayed robotics + Competition 2020. The LAAS Team has been + selected as a finalist of the competition. +

+ +

+ + 6 November 2019, Software
+ BebopS: a ROS package aimed to simulate the behavior of Parrot Bebop 2 by using SIL methodologies + (code, + pdf, + poster, + video). +

+ +

+ + 29 June 2019, Software
+ CrazyS: a software-in-the-loop simulation platform for the Crazyflie 2.0 nano-quadcopter + (pdf, + code, + video). +

+ +

+ + 17 May 2018, News
+ As member of the UniSannio team, I was selected as finalist of the + Aerial robotics control and perception challenge at the 26th Mediterranean Conference on Control and Automation 2018. + During the week 18th–23rd June 2018 Pasquale Oppido and I will compete with the other finalist team, by proposing own controller + for the Bebop drone that has to fulfill wind farm inspection tasks. +

+ +

+ + 16 April 2016, News
+ During the "Make & Share" + event organized by the Tech Coffee association, held in Palazzo Paolo V in Benevento, Italy, I will take a talk on "Advaced Drone Applications: + oppunities and issues". +

+ + +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+ + + diff --git a/images/CTU_logo.jpg b/images/CTU_logo.jpg new file mode 100755 index 0000000..ff72f36 Binary files /dev/null and b/images/CTU_logo.jpg differ diff --git a/images/arxiv.png b/images/arxiv.png new file mode 100755 index 0000000..30c68d2 Binary files /dev/null and b/images/arxiv.png differ diff --git a/images/bibtex1.jpg b/images/bibtex1.jpg new file mode 100755 index 0000000..976411e Binary files /dev/null and b/images/bibtex1.jpg differ diff --git a/images/download1.png b/images/download1.png new file mode 100755 index 0000000..12ad08e Binary files /dev/null and b/images/download1.png differ diff --git a/images/giphy.gif b/images/giphy.gif new file mode 100755 index 0000000..caa3cdb Binary files /dev/null and b/images/giphy.gif differ diff --git a/images/headshot.jpg b/images/headshot.jpg new file mode 100755 index 0000000..e0a2f0c Binary files /dev/null and b/images/headshot.jpg differ diff --git a/images/icons/cv.png b/images/icons/cv.png new file mode 100755 index 0000000..f539d1f Binary files /dev/null and b/images/icons/cv.png differ diff --git a/images/icons/envelopeicon.png b/images/icons/envelopeicon.png new file mode 100755 index 0000000..c690960 Binary files /dev/null and b/images/icons/envelopeicon.png differ diff --git a/images/icons/fb.png b/images/icons/fb.png new file mode 100755 index 0000000..c268a2e Binary files /dev/null and b/images/icons/fb.png differ diff --git a/images/icons/ghat.png b/images/icons/ghat.png new file mode 100755 index 0000000..de6e89d Binary files /dev/null and b/images/icons/ghat.png differ diff --git a/images/icons/in.png b/images/icons/in.png new file mode 100755 index 0000000..005ced4 Binary files /dev/null and b/images/icons/in.png differ diff --git a/images/icons/insta.png b/images/icons/insta.png new file mode 100755 index 0000000..185e14d Binary files /dev/null and b/images/icons/insta.png differ diff --git a/images/icons/orcid.png b/images/icons/orcid.png new file mode 100755 index 0000000..cc7291c Binary files /dev/null and b/images/icons/orcid.png differ diff --git a/images/icons/publons.png b/images/icons/publons.png new file mode 100755 index 0000000..326f315 Binary files /dev/null and b/images/icons/publons.png differ diff --git a/images/icons/researchgate.png b/images/icons/researchgate.png new file mode 100755 index 0000000..7654d94 Binary files /dev/null and b/images/icons/researchgate.png differ diff --git a/images/icons/scopus.png b/images/icons/scopus.png new file mode 100644 index 0000000..483afd2 Binary files /dev/null and b/images/icons/scopus.png differ diff --git a/images/icons/slides.png b/images/icons/slides.png new file mode 100755 index 0000000..5804519 Binary files /dev/null and b/images/icons/slides.png differ diff --git a/images/icons/svg/academia-square.svg b/images/icons/svg/academia-square.svg new file mode 100644 index 0000000..9130b29 --- /dev/null +++ b/images/icons/svg/academia-square.svg @@ -0,0 +1,117 @@ + + + Academia + + + + + + + + + + + image/svg+xml + + Academia + + + + Academia + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/academia.svg b/images/icons/svg/academia.svg new file mode 100644 index 0000000..5c51c92 --- /dev/null +++ b/images/icons/svg/academia.svg @@ -0,0 +1,104 @@ + + + Academia + + + + + + + + + image/svg+xml + + Academia + + + + Academia + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/acclaim-square.svg b/images/icons/svg/acclaim-square.svg new file mode 100644 index 0000000..c1428d6 --- /dev/null +++ b/images/icons/svg/acclaim-square.svg @@ -0,0 +1,117 @@ + + + Acclaim + + + + + + + + + + + image/svg+xml + + Acclaim + + + + Acclaim + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/acclaim.svg b/images/icons/svg/acclaim.svg new file mode 100644 index 0000000..53f5093 --- /dev/null +++ b/images/icons/svg/acclaim.svg @@ -0,0 +1,104 @@ + + + Acclaim + + + + + + + + + image/svg+xml + + Acclaim + + + + Acclaim + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/acm-square.svg b/images/icons/svg/acm-square.svg new file mode 100644 index 0000000..952e3f8 --- /dev/null +++ b/images/icons/svg/acm-square.svg @@ -0,0 +1,117 @@ + + + ACM + + + + + + + + + + + image/svg+xml + + ACM + + + + ACM + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/acm.svg b/images/icons/svg/acm.svg new file mode 100644 index 0000000..564b3cc --- /dev/null +++ b/images/icons/svg/acm.svg @@ -0,0 +1,104 @@ + + + ACM + + + + + + + + + image/svg+xml + + ACM + + + + ACM + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/acmdl-square.svg b/images/icons/svg/acmdl-square.svg new file mode 100644 index 0000000..c90bef8 --- /dev/null +++ b/images/icons/svg/acmdl-square.svg @@ -0,0 +1,117 @@ + + + ACM DL + + + + + + + + + + + image/svg+xml + + ACM DL + + + + ACM + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/acmdl.svg b/images/icons/svg/acmdl.svg new file mode 100644 index 0000000..119d472 --- /dev/null +++ b/images/icons/svg/acmdl.svg @@ -0,0 +1,104 @@ + + + ACM DL + + + + + + + + + image/svg+xml + + ACM DL + + + + ACM + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ads-square.svg b/images/icons/svg/ads-square.svg new file mode 100644 index 0000000..9d4eef4 --- /dev/null +++ b/images/icons/svg/ads-square.svg @@ -0,0 +1,117 @@ + + + ADS + + + + + + + + + + + image/svg+xml + + ADS + + + + ADS + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ads.svg b/images/icons/svg/ads.svg new file mode 100644 index 0000000..cce4ba2 --- /dev/null +++ b/images/icons/svg/ads.svg @@ -0,0 +1,104 @@ + + + ADS + + + + + + + + + image/svg+xml + + ADS + + + ADS + + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/africarxiv-square.svg b/images/icons/svg/africarxiv-square.svg new file mode 100644 index 0000000..46664d3 --- /dev/null +++ b/images/icons/svg/africarxiv-square.svg @@ -0,0 +1,118 @@ + + + AfricArXiv + + + + + + + + + + + image/svg+xml + + AfricArXiv + + + + AfricArXiv + arXiv + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/africarxiv.svg b/images/icons/svg/africarxiv.svg new file mode 100644 index 0000000..41d4a96 --- /dev/null +++ b/images/icons/svg/africarxiv.svg @@ -0,0 +1,105 @@ + + + AfricArxiv + + + + + + + + + image/svg+xml + + AfricArxiv + + + + AfricArXiv + arXiv + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/archive-square.svg b/images/icons/svg/archive-square.svg new file mode 100644 index 0000000..daf278e --- /dev/null +++ b/images/icons/svg/archive-square.svg @@ -0,0 +1,118 @@ + + + Internet Archive + + + + + + + + + + + image/svg+xml + + + + + Internet Archive + + + Internet Archive + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/archive.svg b/images/icons/svg/archive.svg new file mode 100644 index 0000000..11fc0df --- /dev/null +++ b/images/icons/svg/archive.svg @@ -0,0 +1,104 @@ + + + Internet Archive + + + + + + + + + image/svg+xml + + + Internet Archive + + + Internet Archive + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/arxiv-square.svg b/images/icons/svg/arxiv-square.svg new file mode 100644 index 0000000..bd49739 --- /dev/null +++ b/images/icons/svg/arxiv-square.svg @@ -0,0 +1,130 @@ + + + arXiv + + + + + + + + + + + + + image/svg+xml + + + + + arXiv + + + arXiv + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/arxiv.svg b/images/icons/svg/arxiv.svg new file mode 100644 index 0000000..33ce909 --- /dev/null +++ b/images/icons/svg/arxiv.svg @@ -0,0 +1,113 @@ + + + arXiv + + + + + + + + + image/svg+xml + + arXiv + + + + arXiv + + + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/biorxiv-square.svg b/images/icons/svg/biorxiv-square.svg new file mode 100644 index 0000000..53e49406 --- /dev/null +++ b/images/icons/svg/biorxiv-square.svg @@ -0,0 +1,126 @@ + + + bioRxiv + + + + + + + + + + + + + image/svg+xml + + bioRxiv + + + + bioRxiv + arXiv + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/biorxiv.svg b/images/icons/svg/biorxiv.svg new file mode 100644 index 0000000..4f02919 --- /dev/null +++ b/images/icons/svg/biorxiv.svg @@ -0,0 +1,105 @@ + + + bioRxiv + + + + + + + + + image/svg+xml + + bioRxiv + + + + bioRxiv + arXiv + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ceur-square.svg b/images/icons/svg/ceur-square.svg new file mode 100644 index 0000000..36424c0 --- /dev/null +++ b/images/icons/svg/ceur-square.svg @@ -0,0 +1,125 @@ + + + CEUR + + + + + + + + + + + + + image/svg+xml + + CEUR + + + + CEUR + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ceur.svg b/images/icons/svg/ceur.svg new file mode 100644 index 0000000..4261a8d --- /dev/null +++ b/images/icons/svg/ceur.svg @@ -0,0 +1,104 @@ + + + CEUR + + + + + + + + + image/svg+xml + + CEUR + + + + CEUR + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ciencia-vitae-square.svg b/images/icons/svg/ciencia-vitae-square.svg new file mode 100644 index 0000000..edd1268 --- /dev/null +++ b/images/icons/svg/ciencia-vitae-square.svg @@ -0,0 +1,125 @@ + + + Ciência Vitae + + + + + + + + + + + + + image/svg+xml + + Ciência Vitae + + + + Ciência Vitae + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ciencia-vitae.svg b/images/icons/svg/ciencia-vitae.svg new file mode 100644 index 0000000..ac74146 --- /dev/null +++ b/images/icons/svg/ciencia-vitae.svg @@ -0,0 +1,104 @@ + + + Ciência Vitae + + + + + + + + + image/svg+xml + + Ciência Vitae + + + + Ciência Vitae + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/clarivate-square.svg b/images/icons/svg/clarivate-square.svg new file mode 100644 index 0000000..054654d --- /dev/null +++ b/images/icons/svg/clarivate-square.svg @@ -0,0 +1,106 @@ + + + clarivate + + + + + + + + + image/svg+xml + + + + + clarivate + + + clarivate + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/clarivate.svg b/images/icons/svg/clarivate.svg new file mode 100644 index 0000000..567e03f --- /dev/null +++ b/images/icons/svg/clarivate.svg @@ -0,0 +1,103 @@ + + + clarivate + + + + + + + + image/svg+xml + + + clarivate + + + clarivate + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/closed-access-square.svg b/images/icons/svg/closed-access-square.svg new file mode 100644 index 0000000..0d315f6 --- /dev/null +++ b/images/icons/svg/closed-access-square.svg @@ -0,0 +1,125 @@ + + + Closed Access + + + + + + + + + + + + + image/svg+xml + + Closed Access + + + + Closed Access + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/closed-access.svg b/images/icons/svg/closed-access.svg new file mode 100644 index 0000000..3c416a7 --- /dev/null +++ b/images/icons/svg/closed-access.svg @@ -0,0 +1,104 @@ + + + Closed Access + + + + + + + + + image/svg+xml + + Closed Access + + + + Closed Access + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/conversation-square.svg b/images/icons/svg/conversation-square.svg new file mode 100644 index 0000000..c53c315 --- /dev/null +++ b/images/icons/svg/conversation-square.svg @@ -0,0 +1,125 @@ + + + The Conversation + + + + + + + + + + + + + image/svg+xml + + The Conversation + + + + The Conversation + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/conversation.svg b/images/icons/svg/conversation.svg new file mode 100644 index 0000000..d881fa0 --- /dev/null +++ b/images/icons/svg/conversation.svg @@ -0,0 +1,108 @@ + + + The Conversation + + + + + + + + + image/svg+xml + + The Conversation + + + + The Conversation + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/coursera-square.svg b/images/icons/svg/coursera-square.svg new file mode 100644 index 0000000..6dd8302 --- /dev/null +++ b/images/icons/svg/coursera-square.svg @@ -0,0 +1,125 @@ + + + Coursera + + + + + + + + + + + + + image/svg+xml + + Coursera + + + + Coursera + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/coursera.svg b/images/icons/svg/coursera.svg new file mode 100644 index 0000000..4db8745 --- /dev/null +++ b/images/icons/svg/coursera.svg @@ -0,0 +1,104 @@ + + + Coursera + + + + + + + + + image/svg+xml + + Coursera + + + + Coursera + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/crossref-square.svg b/images/icons/svg/crossref-square.svg new file mode 100644 index 0000000..5eaef44 --- /dev/null +++ b/images/icons/svg/crossref-square.svg @@ -0,0 +1,127 @@ + + + Crossref + + + + + + + + + + + + + image/svg+xml + + Crossref + + + + Crossref + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/crossref.svg b/images/icons/svg/crossref.svg new file mode 100644 index 0000000..3c037be --- /dev/null +++ b/images/icons/svg/crossref.svg @@ -0,0 +1,106 @@ + + + Crossref + + + + + + + + + image/svg+xml + + Crossref + + + + Crossref + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/cv-square.svg b/images/icons/svg/cv-square.svg new file mode 100644 index 0000000..6d98820 --- /dev/null +++ b/images/icons/svg/cv-square.svg @@ -0,0 +1,125 @@ + + + CV + + + + + + + + + + + + + image/svg+xml + + CV + + + + CV + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/cv.svg b/images/icons/svg/cv.svg new file mode 100644 index 0000000..b496c77 --- /dev/null +++ b/images/icons/svg/cv.svg @@ -0,0 +1,105 @@ + + + CV + + + + + + + + + image/svg+xml + + CV + + + + CV + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/datacite-square.svg b/images/icons/svg/datacite-square.svg new file mode 100644 index 0000000..1713e4a --- /dev/null +++ b/images/icons/svg/datacite-square.svg @@ -0,0 +1,125 @@ + + + DataCite + + + + + + + + + + + + + image/svg+xml + + DataCite + + + + DataCite + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/datacite.svg b/images/icons/svg/datacite.svg new file mode 100644 index 0000000..6fc5bee --- /dev/null +++ b/images/icons/svg/datacite.svg @@ -0,0 +1,104 @@ + + + DataCite + + + + + + + + + image/svg+xml + + DataCite + + + + DataCite + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/dataverse-square.svg b/images/icons/svg/dataverse-square.svg new file mode 100644 index 0000000..7c97b01 --- /dev/null +++ b/images/icons/svg/dataverse-square.svg @@ -0,0 +1,125 @@ + + + Dataverse + + + + + + + + + + + + + image/svg+xml + + Dataverse + + + + Dataverse + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/dataverse.svg b/images/icons/svg/dataverse.svg new file mode 100644 index 0000000..1dfa511 --- /dev/null +++ b/images/icons/svg/dataverse.svg @@ -0,0 +1,104 @@ + + + Dataverse + + + + + + + + + image/svg+xml + + Dataverse + + + + Dataverse + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/dblp-square.svg b/images/icons/svg/dblp-square.svg new file mode 100644 index 0000000..43cacd5 --- /dev/null +++ b/images/icons/svg/dblp-square.svg @@ -0,0 +1,125 @@ + + + dblp + + + + + + + + + + + + + image/svg+xml + + dblp + + + + dblp + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/dblp.svg b/images/icons/svg/dblp.svg new file mode 100644 index 0000000..884463a --- /dev/null +++ b/images/icons/svg/dblp.svg @@ -0,0 +1,104 @@ + + + dblp + + + + + + + + + image/svg+xml + + dblp + + + + dblp + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/depsy-square.svg b/images/icons/svg/depsy-square.svg new file mode 100644 index 0000000..56efff7 --- /dev/null +++ b/images/icons/svg/depsy-square.svg @@ -0,0 +1,125 @@ + + + Depsy + + + + + + + + + + + + + image/svg+xml + + Depsy + + + + Depsy + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/depsy.svg b/images/icons/svg/depsy.svg new file mode 100644 index 0000000..9e831be --- /dev/null +++ b/images/icons/svg/depsy.svg @@ -0,0 +1,104 @@ + + + Depsy + + + + + + + + + image/svg+xml + + Depsy + + + + Depsy + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/doi-square.svg b/images/icons/svg/doi-square.svg new file mode 100644 index 0000000..23e3e26 --- /dev/null +++ b/images/icons/svg/doi-square.svg @@ -0,0 +1,125 @@ + + + DOI + + + + + + + + + + + + + image/svg+xml + + DOI + + + + DOI + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/doi.svg b/images/icons/svg/doi.svg new file mode 100644 index 0000000..fe914c4 --- /dev/null +++ b/images/icons/svg/doi.svg @@ -0,0 +1,104 @@ + + + DOI + + + + + + + + + image/svg+xml + + DOI + + + + DOI + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/dryad-square.svg b/images/icons/svg/dryad-square.svg new file mode 100644 index 0000000..3933c45 --- /dev/null +++ b/images/icons/svg/dryad-square.svg @@ -0,0 +1,125 @@ + + + Dryad + + + + + + + + + + + + + image/svg+xml + + Dryad + + + + Dryad + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/dryad.svg b/images/icons/svg/dryad.svg new file mode 100644 index 0000000..3005a2e --- /dev/null +++ b/images/icons/svg/dryad.svg @@ -0,0 +1,104 @@ + + + Dryad + + + + + + + + + image/svg+xml + + Dryad + + + + Dryad + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/elsevier-square.svg b/images/icons/svg/elsevier-square.svg new file mode 100644 index 0000000..f0516c2 --- /dev/null +++ b/images/icons/svg/elsevier-square.svg @@ -0,0 +1,125 @@ + + + Elsevier + + + + + + + + + + + + + image/svg+xml + + Elsevier + + + + Elsevier + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/elsevier.svg b/images/icons/svg/elsevier.svg new file mode 100644 index 0000000..09c89a0 --- /dev/null +++ b/images/icons/svg/elsevier.svg @@ -0,0 +1,98 @@ + + + Elsevier + + + + + + + + image/svg+xml + + Elsevier + + + + Elsevier + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/figshare-square.svg b/images/icons/svg/figshare-square.svg new file mode 100644 index 0000000..eab871a --- /dev/null +++ b/images/icons/svg/figshare-square.svg @@ -0,0 +1,125 @@ + + + Figshare + + + + + + + + + + + + + image/svg+xml + + Figshare + + + + Figshare + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/figshare.svg b/images/icons/svg/figshare.svg new file mode 100644 index 0000000..55dda50 --- /dev/null +++ b/images/icons/svg/figshare.svg @@ -0,0 +1,104 @@ + + + Figshare + + + + + + + + + image/svg+xml + + Figshare + + + + Figshare + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/google-scholar-square.svg b/images/icons/svg/google-scholar-square.svg new file mode 100644 index 0000000..4a72c94 --- /dev/null +++ b/images/icons/svg/google-scholar-square.svg @@ -0,0 +1,125 @@ + + + Google Scholar + + + + + + + + + + + + + image/svg+xml + + Google Scholar + + + + Google Scholar + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/google-scholar.svg b/images/icons/svg/google-scholar.svg new file mode 100644 index 0000000..5ebb776 --- /dev/null +++ b/images/icons/svg/google-scholar.svg @@ -0,0 +1,104 @@ + + + Google Scholar + + + + + + + + + image/svg+xml + + Google Scholar + + + + Google Scholar + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/hal-square.svg b/images/icons/svg/hal-square.svg new file mode 100644 index 0000000..d288d57 --- /dev/null +++ b/images/icons/svg/hal-square.svg @@ -0,0 +1,126 @@ + + + Archive Ouverte HAL + + + + + + + + + + + + + image/svg+xml + + + + + HAL + + + Archive Ouverte HAL + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/hal.svg b/images/icons/svg/hal.svg new file mode 100644 index 0000000..6646eef --- /dev/null +++ b/images/icons/svg/hal.svg @@ -0,0 +1,105 @@ + + + Archive ouverte HAL + + + + + + + + + image/svg+xml + + Archive ouverte HAL + + + + HAL + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/hypothesis-square.svg b/images/icons/svg/hypothesis-square.svg new file mode 100644 index 0000000..5807d89 --- /dev/null +++ b/images/icons/svg/hypothesis-square.svg @@ -0,0 +1,125 @@ + + + hypothes.is + + + + + + + + + + + + + image/svg+xml + + hypothes.is + + + + hypothes.is + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/hypothesis.svg b/images/icons/svg/hypothesis.svg new file mode 100644 index 0000000..eb4eec4 --- /dev/null +++ b/images/icons/svg/hypothesis.svg @@ -0,0 +1,98 @@ + + + hypothes.is + + + + + + + + image/svg+xml + + hypothes.is + + + + hypothes.is + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ideas-repec-square.svg b/images/icons/svg/ideas-repec-square.svg new file mode 100644 index 0000000..68299f9 --- /dev/null +++ b/images/icons/svg/ideas-repec-square.svg @@ -0,0 +1,125 @@ + + + IDEAS/RePEc + + + + + + + + + + + + + image/svg+xml + + IDEAS/RePEc + + + + IDEAS/RePEc + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ideas-repec.svg b/images/icons/svg/ideas-repec.svg new file mode 100644 index 0000000..259d967 --- /dev/null +++ b/images/icons/svg/ideas-repec.svg @@ -0,0 +1,104 @@ + + + IDEAS/RePEc + + + + + + + + + image/svg+xml + + IDEAS/RePEc + + + + IDEAS/RePEc + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ieee-square.svg b/images/icons/svg/ieee-square.svg new file mode 100644 index 0000000..f57608a --- /dev/null +++ b/images/icons/svg/ieee-square.svg @@ -0,0 +1,125 @@ + + + IEEE + + + + + + + + + + + + + image/svg+xml + + IEEE + + + + IEEE + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ieee.svg b/images/icons/svg/ieee.svg new file mode 100644 index 0000000..1626add --- /dev/null +++ b/images/icons/svg/ieee.svg @@ -0,0 +1,104 @@ + + + IEEE + + + + + + + + + image/svg+xml + + IEEE + + + + IEEE + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/impactstory-square.svg b/images/icons/svg/impactstory-square.svg new file mode 100644 index 0000000..c13b6c9 --- /dev/null +++ b/images/icons/svg/impactstory-square.svg @@ -0,0 +1,125 @@ + + + Impactstory + + + + + + + + + + + + + image/svg+xml + + Impactstory + + + Impactstory + + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/impactstory.svg b/images/icons/svg/impactstory.svg new file mode 100644 index 0000000..b95812a --- /dev/null +++ b/images/icons/svg/impactstory.svg @@ -0,0 +1,104 @@ + + + Impactstory + + + + + + + + + image/svg+xml + + Impactstory + + + + Impactstory + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/inaturalist-square.svg b/images/icons/svg/inaturalist-square.svg new file mode 100644 index 0000000..2576076 --- /dev/null +++ b/images/icons/svg/inaturalist-square.svg @@ -0,0 +1,125 @@ + + + iNaturalist + + + + + + + + + + + + + image/svg+xml + + iNaturalist + + + + iNaturalist + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/inaturalist.svg b/images/icons/svg/inaturalist.svg new file mode 100644 index 0000000..33b177b --- /dev/null +++ b/images/icons/svg/inaturalist.svg @@ -0,0 +1,98 @@ + + + iNaturalist + + + + + + + + image/svg+xml + + iNaturalist + + + + iNaturalist + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/inpn-square.svg b/images/icons/svg/inpn-square.svg new file mode 100644 index 0000000..8573122 --- /dev/null +++ b/images/icons/svg/inpn-square.svg @@ -0,0 +1,125 @@ + + + INPN + + + + + + + + + + + + + image/svg+xml + + INPN + + + + INPN + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/inpn.svg b/images/icons/svg/inpn.svg new file mode 100644 index 0000000..faab53e --- /dev/null +++ b/images/icons/svg/inpn.svg @@ -0,0 +1,99 @@ + + + INPN + + + + + + + + image/svg+xml + + INPN + + + + INPN + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/inspire-square.svg b/images/icons/svg/inspire-square.svg new file mode 100644 index 0000000..74a0236 --- /dev/null +++ b/images/icons/svg/inspire-square.svg @@ -0,0 +1,106 @@ + + + Inspire + + + + + + + + + image/svg+xml + + + + + Inspire + + + Inspire + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/inspire.svg b/images/icons/svg/inspire.svg new file mode 100644 index 0000000..a998fb5 --- /dev/null +++ b/images/icons/svg/inspire.svg @@ -0,0 +1,69 @@ + +Inspireimage/svg+xmlInspireInspire diff --git a/images/icons/svg/isidore-square.svg b/images/icons/svg/isidore-square.svg new file mode 100644 index 0000000..3d2a375 --- /dev/null +++ b/images/icons/svg/isidore-square.svg @@ -0,0 +1,125 @@ + + + Isidore + + + + + + + + + + + + + image/svg+xml + + Isidore + + + + Isidore + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/isidore.svg b/images/icons/svg/isidore.svg new file mode 100644 index 0000000..3efb91d --- /dev/null +++ b/images/icons/svg/isidore.svg @@ -0,0 +1,106 @@ + + + Isidore + + + + + + + + + image/svg+xml + + Isidore + + + + Isidore + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/isni-square.svg b/images/icons/svg/isni-square.svg new file mode 100644 index 0000000..36a9d22 --- /dev/null +++ b/images/icons/svg/isni-square.svg @@ -0,0 +1,106 @@ + + + ISNI + + + + + + + + + image/svg+xml + + + + + ISNI + + + ISNI + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/isni.svg b/images/icons/svg/isni.svg new file mode 100644 index 0000000..6aed976 --- /dev/null +++ b/images/icons/svg/isni.svg @@ -0,0 +1,101 @@ + + + ISNI + + + + + + + + image/svg+xml + + + ISNI + + + ISNI + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/jstor-square.svg b/images/icons/svg/jstor-square.svg new file mode 100644 index 0000000..c4615d0 --- /dev/null +++ b/images/icons/svg/jstor-square.svg @@ -0,0 +1,125 @@ + + + JSTOR + + + + + + + + + + + + + image/svg+xml + + JSTOR + + + + JSTOR + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/jstor.svg b/images/icons/svg/jstor.svg new file mode 100644 index 0000000..6f840ed --- /dev/null +++ b/images/icons/svg/jstor.svg @@ -0,0 +1,105 @@ + + + JSTOR + + + + + + + + + image/svg+xml + + JSTOR + + + + JSTOR + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/lattes-square.svg b/images/icons/svg/lattes-square.svg new file mode 100644 index 0000000..a870480 --- /dev/null +++ b/images/icons/svg/lattes-square.svg @@ -0,0 +1,125 @@ + + + Plataforma Lattes + + + + + + + + + + + + + image/svg+xml + + Plataforma Lattes + + + + Plataforma Lattes + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/lattes.svg b/images/icons/svg/lattes.svg new file mode 100644 index 0000000..e4b13d6 --- /dev/null +++ b/images/icons/svg/lattes.svg @@ -0,0 +1,104 @@ + + + Plataforma Lattes + + + + + + + + + image/svg+xml + + Plataforma Lattes + + + + Plataforma Lattes + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/mathoverflow-square.svg b/images/icons/svg/mathoverflow-square.svg new file mode 100644 index 0000000..aa52ea5 --- /dev/null +++ b/images/icons/svg/mathoverflow-square.svg @@ -0,0 +1,125 @@ + + + MathOverflow + + + + + + + + + + + + + image/svg+xml + + MathOverflow + + + + MathOverflow + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/mathoverflow.svg b/images/icons/svg/mathoverflow.svg new file mode 100644 index 0000000..aff3cbe --- /dev/null +++ b/images/icons/svg/mathoverflow.svg @@ -0,0 +1,104 @@ + + + MathOverflow + + + + + + + + + image/svg+xml + + MathOverflow + + + + MathOverflow + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/mendeley-square.svg b/images/icons/svg/mendeley-square.svg new file mode 100644 index 0000000..30ac882 --- /dev/null +++ b/images/icons/svg/mendeley-square.svg @@ -0,0 +1,125 @@ + + + Mendeley + + + + + + + + + + + + + image/svg+xml + + Mendeley + + + + Mendeley + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/mendeley.svg b/images/icons/svg/mendeley.svg new file mode 100644 index 0000000..5bff82b --- /dev/null +++ b/images/icons/svg/mendeley.svg @@ -0,0 +1,104 @@ + + + Mendeley + + + + + + + + + image/svg+xml + + Mendeley + + + + Mendeley + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/moodle-square.svg b/images/icons/svg/moodle-square.svg new file mode 100644 index 0000000..a85f506 --- /dev/null +++ b/images/icons/svg/moodle-square.svg @@ -0,0 +1,125 @@ + + + Moodle + + + + + + + + + + + + + image/svg+xml + + Moodle + + + + Moodle + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/moodle.svg b/images/icons/svg/moodle.svg new file mode 100644 index 0000000..a5d3df8 --- /dev/null +++ b/images/icons/svg/moodle.svg @@ -0,0 +1,98 @@ + + + Moodle + + + + + + + + image/svg+xml + + Moodle + + + + Moodle + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/mtmt-square.svg b/images/icons/svg/mtmt-square.svg new file mode 100644 index 0000000..a334ff3 --- /dev/null +++ b/images/icons/svg/mtmt-square.svg @@ -0,0 +1,126 @@ + + + MTMT + + + + + + + + + + + + + image/svg+xml + + + + + MTMT + + + MTMT + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/mtmt.svg b/images/icons/svg/mtmt.svg new file mode 100644 index 0000000..e097e94 --- /dev/null +++ b/images/icons/svg/mtmt.svg @@ -0,0 +1,123 @@ + + + MTMT + + + + + + + + + image/svg+xml + + + MTMT + + + MTMT + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/nakala-square.svg b/images/icons/svg/nakala-square.svg new file mode 100644 index 0000000..4ed8528 --- /dev/null +++ b/images/icons/svg/nakala-square.svg @@ -0,0 +1,125 @@ + + + Nakala + + + + + + + + + + + + + image/svg+xml + + Nakala + + + + Nakala + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/nakala.svg b/images/icons/svg/nakala.svg new file mode 100644 index 0000000..b869c3f --- /dev/null +++ b/images/icons/svg/nakala.svg @@ -0,0 +1,105 @@ + + + Nakala + + + + + + + + + image/svg+xml + + Nakala + + + + Nakala + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/obp-square.svg b/images/icons/svg/obp-square.svg new file mode 100644 index 0000000..e06a02e --- /dev/null +++ b/images/icons/svg/obp-square.svg @@ -0,0 +1,125 @@ + + + Open Book Publisher + + + + + + + + + + + + + image/svg+xml + + Open Book Publisher + + + + Open Book Publisher + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/obp.svg b/images/icons/svg/obp.svg new file mode 100644 index 0000000..ee424d9 --- /dev/null +++ b/images/icons/svg/obp.svg @@ -0,0 +1,105 @@ + + + Open Book Publisher + + + + + + + + + image/svg+xml + + Open Book Publisher + + + + Open Book Publisher + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/open-access-square.svg b/images/icons/svg/open-access-square.svg new file mode 100644 index 0000000..d474314 --- /dev/null +++ b/images/icons/svg/open-access-square.svg @@ -0,0 +1,125 @@ + + + Open Access + + + + + + + + + + + + + image/svg+xml + + Open Access + + + + Open Access + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/open-access.svg b/images/icons/svg/open-access.svg new file mode 100644 index 0000000..f1bfe11 --- /dev/null +++ b/images/icons/svg/open-access.svg @@ -0,0 +1,104 @@ + + + Open Access + + + + + + + + + image/svg+xml + + Open Access + + + + Open Access + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/open-data-square.svg b/images/icons/svg/open-data-square.svg new file mode 100644 index 0000000..50315eb --- /dev/null +++ b/images/icons/svg/open-data-square.svg @@ -0,0 +1,126 @@ + + + Open Data + + + + + + + + + + + + + image/svg+xml + + Open Data + + + + Open Science Badges + Open Data + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/open-data.svg b/images/icons/svg/open-data.svg new file mode 100644 index 0000000..5e8a7ad --- /dev/null +++ b/images/icons/svg/open-data.svg @@ -0,0 +1,105 @@ + + + Open Data + + + + + + + + + image/svg+xml + + Open Data + + + + Open Science Badges + Open Data + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/open-materials-square.svg b/images/icons/svg/open-materials-square.svg new file mode 100644 index 0000000..9000d81 --- /dev/null +++ b/images/icons/svg/open-materials-square.svg @@ -0,0 +1,126 @@ + + + Open Materials + + + + + + + + + + + + + image/svg+xml + + Open Materials + + + + Open Science Badges + Open Materials + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/open-materials.svg b/images/icons/svg/open-materials.svg new file mode 100644 index 0000000..f9b5305 --- /dev/null +++ b/images/icons/svg/open-materials.svg @@ -0,0 +1,105 @@ + + + Open Materials + + + + + + + + + image/svg+xml + + Open Materials + + + + Open Science Badges + Open Materials + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/openedition-square.svg b/images/icons/svg/openedition-square.svg new file mode 100644 index 0000000..5cf6296 --- /dev/null +++ b/images/icons/svg/openedition-square.svg @@ -0,0 +1,125 @@ + + + OpenÉdition + + + + + + + + + + + + + image/svg+xml + + OpenÉdition + + + + OpenÉdition + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/openedition.svg b/images/icons/svg/openedition.svg new file mode 100644 index 0000000..640b648 --- /dev/null +++ b/images/icons/svg/openedition.svg @@ -0,0 +1,105 @@ + + + OpenÉdition + + + + + + + + + image/svg+xml + + OpenÉdition + + + + OpenÉdition + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/orcid-square.svg b/images/icons/svg/orcid-square.svg new file mode 100644 index 0000000..19982f6 --- /dev/null +++ b/images/icons/svg/orcid-square.svg @@ -0,0 +1,125 @@ + + + Orcid + + + + + + + + + + + + + image/svg+xml + + Orcid + + + + Orcid + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/orcid.svg b/images/icons/svg/orcid.svg new file mode 100644 index 0000000..ee3b9a5 --- /dev/null +++ b/images/icons/svg/orcid.svg @@ -0,0 +1,104 @@ + + + Orcid + + + + + + + + + image/svg+xml + + Orcid + + + + Oricd + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/osf-square.svg b/images/icons/svg/osf-square.svg new file mode 100644 index 0000000..436c659 --- /dev/null +++ b/images/icons/svg/osf-square.svg @@ -0,0 +1,125 @@ + + + OSF + + + + + + + + + + + + + image/svg+xml + + OSF + + + + OSF + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/osf.svg b/images/icons/svg/osf.svg new file mode 100644 index 0000000..aa2117b --- /dev/null +++ b/images/icons/svg/osf.svg @@ -0,0 +1,104 @@ + + + OSF + + + + + + + + + image/svg+xml + + OSF + + + + OSF + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/overleaf-square.svg b/images/icons/svg/overleaf-square.svg new file mode 100644 index 0000000..2330348 --- /dev/null +++ b/images/icons/svg/overleaf-square.svg @@ -0,0 +1,125 @@ + + + Overleaf + + + + + + + + + + + + + image/svg+xml + + Overleaf + + + + Overleaf + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/overleaf.svg b/images/icons/svg/overleaf.svg new file mode 100644 index 0000000..7ffc446 --- /dev/null +++ b/images/icons/svg/overleaf.svg @@ -0,0 +1,104 @@ + + + Overleaf + + + + + + + + + image/svg+xml + + Overleaf + + + + Overleaf + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/philpapers-square.svg b/images/icons/svg/philpapers-square.svg new file mode 100644 index 0000000..3ce6a80 --- /dev/null +++ b/images/icons/svg/philpapers-square.svg @@ -0,0 +1,125 @@ + + + PhilPapers + + + + + + + + + + + + + image/svg+xml + + PhilPapers + + + + PhilPapers + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/philpapers.svg b/images/icons/svg/philpapers.svg new file mode 100644 index 0000000..aa01c7b --- /dev/null +++ b/images/icons/svg/philpapers.svg @@ -0,0 +1,104 @@ + + + PhilPapers + + + + + + + + + image/svg+xml + + PhilPapers + + + + PhilPapers + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/piazza-square.svg b/images/icons/svg/piazza-square.svg new file mode 100644 index 0000000..9de2789 --- /dev/null +++ b/images/icons/svg/piazza-square.svg @@ -0,0 +1,125 @@ + + + Piazza + + + + + + + + + + + + + image/svg+xml + + Piazza + + + + Piazza + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/piazza.svg b/images/icons/svg/piazza.svg new file mode 100644 index 0000000..7289f1d --- /dev/null +++ b/images/icons/svg/piazza.svg @@ -0,0 +1,104 @@ + + + Piazza + + + + + + + + + image/svg+xml + + Piazza + + + + Piazza + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-de-plus-square.svg b/images/icons/svg/preregistered-de-plus-square.svg new file mode 100644 index 0000000..3664995 --- /dev/null +++ b/images/icons/svg/preregistered-de-plus-square.svg @@ -0,0 +1,126 @@ + + + Preregistered DE+ + + + + + + + + + + + + + image/svg+xml + + Preregistered DE+ + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-de-plus.svg b/images/icons/svg/preregistered-de-plus.svg new file mode 100644 index 0000000..b37b94b --- /dev/null +++ b/images/icons/svg/preregistered-de-plus.svg @@ -0,0 +1,105 @@ + + + Preregistered DE+ + + + + + + + + + image/svg+xml + + Preregistered DE+ + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-de-square.svg b/images/icons/svg/preregistered-de-square.svg new file mode 100644 index 0000000..6dc8922 --- /dev/null +++ b/images/icons/svg/preregistered-de-square.svg @@ -0,0 +1,126 @@ + + + Preregistered DE + + + + + + + + + + + + + image/svg+xml + + Preregistered DE + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-de-tc-plus-square.svg b/images/icons/svg/preregistered-de-tc-plus-square.svg new file mode 100644 index 0000000..af59aae --- /dev/null +++ b/images/icons/svg/preregistered-de-tc-plus-square.svg @@ -0,0 +1,120 @@ + + + Preregistered DE TC+ + + + + + + + + + + + + + image/svg+xml + + Preregistered DE TC+ + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-de-tc-plus.svg b/images/icons/svg/preregistered-de-tc-plus.svg new file mode 100644 index 0000000..cc50b87 --- /dev/null +++ b/images/icons/svg/preregistered-de-tc-plus.svg @@ -0,0 +1,105 @@ + + + Preregistered DE TC+ + + + + + + + + + image/svg+xml + + Preregistered DE TC+ + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-de-tc-square.svg b/images/icons/svg/preregistered-de-tc-square.svg new file mode 100644 index 0000000..cf37978 --- /dev/null +++ b/images/icons/svg/preregistered-de-tc-square.svg @@ -0,0 +1,120 @@ + + + Preregistered DE TC + + + + + + + + + + + + + image/svg+xml + + Preregistered DE TC + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-de-tc.svg b/images/icons/svg/preregistered-de-tc.svg new file mode 100644 index 0000000..bd81840 --- /dev/null +++ b/images/icons/svg/preregistered-de-tc.svg @@ -0,0 +1,105 @@ + + + Preregistered DE TC + + + + + + + + + image/svg+xml + + Preregistered DE TC + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-de.svg b/images/icons/svg/preregistered-de.svg new file mode 100644 index 0000000..cf82e85 --- /dev/null +++ b/images/icons/svg/preregistered-de.svg @@ -0,0 +1,105 @@ + + + Preregistered DE + + + + + + + + + image/svg+xml + + Preregistered DE + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-square.svg b/images/icons/svg/preregistered-square.svg new file mode 100644 index 0000000..d600721 --- /dev/null +++ b/images/icons/svg/preregistered-square.svg @@ -0,0 +1,126 @@ + + + Preregistered + + + + + + + + + + + + + image/svg+xml + + Preregistered + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-tc-plus-square.svg b/images/icons/svg/preregistered-tc-plus-square.svg new file mode 100644 index 0000000..858d08a --- /dev/null +++ b/images/icons/svg/preregistered-tc-plus-square.svg @@ -0,0 +1,120 @@ + + + Preregistered TC+ + + + + + + + + + + + + + image/svg+xml + + Preregistered TC+ + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-tc-plus.svg b/images/icons/svg/preregistered-tc-plus.svg new file mode 100644 index 0000000..8e89f6a --- /dev/null +++ b/images/icons/svg/preregistered-tc-plus.svg @@ -0,0 +1,105 @@ + + + Preregistered TC+ + + + + + + + + + image/svg+xml + + Preregistered TC+ + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-tc-square.svg b/images/icons/svg/preregistered-tc-square.svg new file mode 100644 index 0000000..b3a390c --- /dev/null +++ b/images/icons/svg/preregistered-tc-square.svg @@ -0,0 +1,120 @@ + + + Preregistered TC + + + + + + + + + + + + + image/svg+xml + + Preregistered TC + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered-tc.svg b/images/icons/svg/preregistered-tc.svg new file mode 100644 index 0000000..bef1e93 --- /dev/null +++ b/images/icons/svg/preregistered-tc.svg @@ -0,0 +1,105 @@ + + + Preregistered TC + + + + + + + + + image/svg+xml + + Preregistered TC + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/preregistered.svg b/images/icons/svg/preregistered.svg new file mode 100644 index 0000000..811cb9e --- /dev/null +++ b/images/icons/svg/preregistered.svg @@ -0,0 +1,105 @@ + + + Preregistered + + + + + + + + + image/svg+xml + + Preregistered + + + + Open Science Badges + Preregistered + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/protocols-square.svg b/images/icons/svg/protocols-square.svg new file mode 100644 index 0000000..2bd3dc7 --- /dev/null +++ b/images/icons/svg/protocols-square.svg @@ -0,0 +1,125 @@ + + + protocols.io + + + + + + + + + + + + + image/svg+xml + + protocols.io + + + + protocols.io + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/protocols.svg b/images/icons/svg/protocols.svg new file mode 100644 index 0000000..a51931a --- /dev/null +++ b/images/icons/svg/protocols.svg @@ -0,0 +1,106 @@ + + + protocols.io + + + + + + + + + image/svg+xml + + protocols.io + + + + protocols.io + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/psyarxiv-square.svg b/images/icons/svg/psyarxiv-square.svg new file mode 100644 index 0000000..17a8c83 --- /dev/null +++ b/images/icons/svg/psyarxiv-square.svg @@ -0,0 +1,125 @@ + + + PsyArXiv + + + + + + + + + + + + + image/svg+xml + + PsyArXiv + + + + PsyArXiv + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/psyarxiv.svg b/images/icons/svg/psyarxiv.svg new file mode 100644 index 0000000..f299e47 --- /dev/null +++ b/images/icons/svg/psyarxiv.svg @@ -0,0 +1,98 @@ + + + PsyArXiv + + + + + + + + image/svg+xml + + PsyArXiv + + + + PsyArXiv + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/publons-square.svg b/images/icons/svg/publons-square.svg new file mode 100644 index 0000000..4fa082f --- /dev/null +++ b/images/icons/svg/publons-square.svg @@ -0,0 +1,125 @@ + + + Publons + + + + + + + + + + + + + image/svg+xml + + Publons + + + + Publons + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/publons.svg b/images/icons/svg/publons.svg new file mode 100644 index 0000000..7f408bc --- /dev/null +++ b/images/icons/svg/publons.svg @@ -0,0 +1,104 @@ + + + Publons + + + + + + + + + image/svg+xml + + Publons + + + + Publons + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/pubmed-square.svg b/images/icons/svg/pubmed-square.svg new file mode 100644 index 0000000..2f42365 --- /dev/null +++ b/images/icons/svg/pubmed-square.svg @@ -0,0 +1,125 @@ + + + PubMed + + + + + + + + + + + + + image/svg+xml + + PubMed + + + + PubMed + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/pubmed.svg b/images/icons/svg/pubmed.svg new file mode 100644 index 0000000..a2fc6e4 --- /dev/null +++ b/images/icons/svg/pubmed.svg @@ -0,0 +1,104 @@ + + + PubMed + + + + + + + + + image/svg+xml + + PubMed + + + + PubMed + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/pubpeer-square.svg b/images/icons/svg/pubpeer-square.svg new file mode 100644 index 0000000..58dbe6e --- /dev/null +++ b/images/icons/svg/pubpeer-square.svg @@ -0,0 +1,125 @@ + + + PubPeer + + + + + + + + + + + + + image/svg+xml + + PubPeer + + + + PubPeer + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/pubpeer.svg b/images/icons/svg/pubpeer.svg new file mode 100644 index 0000000..32fac35 --- /dev/null +++ b/images/icons/svg/pubpeer.svg @@ -0,0 +1,105 @@ + + + PubPeer + + + + + + + + + image/svg+xml + + PubPeer + + + + PubPeer + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/researcherid-square.svg b/images/icons/svg/researcherid-square.svg new file mode 100644 index 0000000..89bbdf2 --- /dev/null +++ b/images/icons/svg/researcherid-square.svg @@ -0,0 +1,125 @@ + + + ResearcherID + + + + + + + + + + + + + image/svg+xml + + ResearcherID + + + + ResearcherID + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/researcherid.svg b/images/icons/svg/researcherid.svg new file mode 100644 index 0000000..24e9e15 --- /dev/null +++ b/images/icons/svg/researcherid.svg @@ -0,0 +1,105 @@ + + + ResearcherID + + + + + + + + + image/svg+xml + + ResearcherID + + + + ResearcherID + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/researchgate-square.svg b/images/icons/svg/researchgate-square.svg new file mode 100644 index 0000000..d935577 --- /dev/null +++ b/images/icons/svg/researchgate-square.svg @@ -0,0 +1,125 @@ + + + ResearchGate + + + + + + + + + + + + + image/svg+xml + + ResearchGate + + + + ResearchGate + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/researchgate.svg b/images/icons/svg/researchgate.svg new file mode 100644 index 0000000..c3a0fee --- /dev/null +++ b/images/icons/svg/researchgate.svg @@ -0,0 +1,104 @@ + + + ResearchGate + + + + + + + + + image/svg+xml + + ResearchGate + + + + ResearchGate + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ror-square.svg b/images/icons/svg/ror-square.svg new file mode 100644 index 0000000..3f47218 --- /dev/null +++ b/images/icons/svg/ror-square.svg @@ -0,0 +1,127 @@ + + + Research Organization Registry + + + + + + + + + + + + + image/svg+xml + + Research Organization Registry + + + + Research Organization Registry + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ror.svg b/images/icons/svg/ror.svg new file mode 100644 index 0000000..b2aec84 --- /dev/null +++ b/images/icons/svg/ror.svg @@ -0,0 +1,106 @@ + + + Research Organization Registry + + + + + + + + + image/svg+xml + + Research Organization Registry + + + + Research Organization Registry + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/sci-hub-square.svg b/images/icons/svg/sci-hub-square.svg new file mode 100644 index 0000000..fa234c5 --- /dev/null +++ b/images/icons/svg/sci-hub-square.svg @@ -0,0 +1,125 @@ + + + Sci-Hub + + + + + + + + + + + + + image/svg+xml + + Sci-Hub + + + + Sci-Hub + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/sci-hub.svg b/images/icons/svg/sci-hub.svg new file mode 100644 index 0000000..cd5c85a --- /dev/null +++ b/images/icons/svg/sci-hub.svg @@ -0,0 +1,104 @@ + + + Sci-Hub + + + + + + + + + image/svg+xml + + Sci-Hub + + + + Sci-Hub + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/scirate-square.svg b/images/icons/svg/scirate-square.svg new file mode 100644 index 0000000..1b8f7df --- /dev/null +++ b/images/icons/svg/scirate-square.svg @@ -0,0 +1,125 @@ + + + Scirate + + + + + + + + + + + + + image/svg+xml + + Scirate + + + + Scirate + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/scirate.svg b/images/icons/svg/scirate.svg new file mode 100644 index 0000000..1948e96 --- /dev/null +++ b/images/icons/svg/scirate.svg @@ -0,0 +1,104 @@ + + + Scirate + + + + + + + + + image/svg+xml + + Scirate + + + + Scirate + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/scopus-square.svg b/images/icons/svg/scopus-square.svg new file mode 100644 index 0000000..8d3bdd3 --- /dev/null +++ b/images/icons/svg/scopus-square.svg @@ -0,0 +1,125 @@ + + + Scopus + + + + + + + + + + + + + image/svg+xml + + Scopus + + + + Scopus + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/scopus.svg b/images/icons/svg/scopus.svg new file mode 100644 index 0000000..6976001 --- /dev/null +++ b/images/icons/svg/scopus.svg @@ -0,0 +1,105 @@ + + + Scopus + + + + + + + + + image/svg+xml + + Scopus + + + + Scopus + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/semantic-scholar-square.svg b/images/icons/svg/semantic-scholar-square.svg new file mode 100644 index 0000000..cf3c1d9 --- /dev/null +++ b/images/icons/svg/semantic-scholar-square.svg @@ -0,0 +1,125 @@ + + + Semantic Scholar + + + + + + + + + + + + + image/svg+xml + + Semantic Scholar + + + + Semantic Scholar + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/semantic-scholar.svg b/images/icons/svg/semantic-scholar.svg new file mode 100644 index 0000000..6f0b758 --- /dev/null +++ b/images/icons/svg/semantic-scholar.svg @@ -0,0 +1,105 @@ + + + Semantic Scholar + + + + + + + + + image/svg+xml + + Semantic Scholar + + + + Semantic Scholar + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/springer-square.svg b/images/icons/svg/springer-square.svg new file mode 100644 index 0000000..ef7ed5c --- /dev/null +++ b/images/icons/svg/springer-square.svg @@ -0,0 +1,125 @@ + + + Springer + + + + + + + + + + + + + image/svg+xml + + Springer + + + + Springer + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/springer.svg b/images/icons/svg/springer.svg new file mode 100644 index 0000000..a29bf28 --- /dev/null +++ b/images/icons/svg/springer.svg @@ -0,0 +1,104 @@ + + + Springer + + + + + + + + + image/svg+xml + + Springer + + + + Springer + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ssrn-square.svg b/images/icons/svg/ssrn-square.svg new file mode 100644 index 0000000..c69f24c --- /dev/null +++ b/images/icons/svg/ssrn-square.svg @@ -0,0 +1,125 @@ + + + SSRN + + + + + + + + + + + + + image/svg+xml + + SSRN + + + + SSRN + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/ssrn.svg b/images/icons/svg/ssrn.svg new file mode 100644 index 0000000..22e3b4c --- /dev/null +++ b/images/icons/svg/ssrn.svg @@ -0,0 +1,98 @@ + + + SSRN + + + + + + + + image/svg+xml + + SSRN + + + + SSRN + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/stackoverflow-square.svg b/images/icons/svg/stackoverflow-square.svg new file mode 100644 index 0000000..6f708c5 --- /dev/null +++ b/images/icons/svg/stackoverflow-square.svg @@ -0,0 +1,125 @@ + + + Stack Overflow + + + + + + + + + + + + + image/svg+xml + + Stack Overflow + + + + Stack Overflow + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/stackoverflow.svg b/images/icons/svg/stackoverflow.svg new file mode 100644 index 0000000..a36db99 --- /dev/null +++ b/images/icons/svg/stackoverflow.svg @@ -0,0 +1,98 @@ + + + Stack Overflow + + + + + + + + image/svg+xml + + Stack Overflow + + + + Stack Overflow + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/viaf-square.svg b/images/icons/svg/viaf-square.svg new file mode 100644 index 0000000..b47da4f --- /dev/null +++ b/images/icons/svg/viaf-square.svg @@ -0,0 +1,106 @@ + + + VIAF + + + + + + + + + image/svg+xml + + + + + VIAF + + + VIAF + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/viaf.svg b/images/icons/svg/viaf.svg new file mode 100644 index 0000000..848a8aa --- /dev/null +++ b/images/icons/svg/viaf.svg @@ -0,0 +1,106 @@ + + + VIAF + + + + + + + + + image/svg+xml + + + VIAF + + + VIAF + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/wiley-square.svg b/images/icons/svg/wiley-square.svg new file mode 100644 index 0000000..ec4984d --- /dev/null +++ b/images/icons/svg/wiley-square.svg @@ -0,0 +1,106 @@ + + + Wiley + + + + + + + + + image/svg+xml + + + + + Wiley + + + Wiley + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/wiley.svg b/images/icons/svg/wiley.svg new file mode 100644 index 0000000..f1f57a5 --- /dev/null +++ b/images/icons/svg/wiley.svg @@ -0,0 +1,111 @@ + + + Wiley + + + + + + + + + image/svg+xml + + + + + Wiley + + + Wiley + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/zenodo.svg b/images/icons/svg/zenodo.svg new file mode 100644 index 0000000..e4e3c2c --- /dev/null +++ b/images/icons/svg/zenodo.svg @@ -0,0 +1,105 @@ + + + Zenodo + + + + + + + + + image/svg+xml + + Zenodo + + + + Zenodo + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/zotero-square.svg b/images/icons/svg/zotero-square.svg new file mode 100644 index 0000000..1b59252 --- /dev/null +++ b/images/icons/svg/zotero-square.svg @@ -0,0 +1,125 @@ + + + Zotero + + + + + + + + + + + + + image/svg+xml + + Zotero + + + + Zotero + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/svg/zotero.svg b/images/icons/svg/zotero.svg new file mode 100644 index 0000000..78d1382 --- /dev/null +++ b/images/icons/svg/zotero.svg @@ -0,0 +1,104 @@ + + + Zotero + + + + + + + + + image/svg+xml + + Zotero + + + + Zotero + + + + + + + + + + + + + + + + + + + + diff --git a/images/icons/twitter.png b/images/icons/twitter.png new file mode 100755 index 0000000..91ec7c9 Binary files /dev/null and b/images/icons/twitter.png differ diff --git a/images/icons/webofscience.png b/images/icons/webofscience.png new file mode 100755 index 0000000..19b2974 Binary files /dev/null and b/images/icons/webofscience.png differ diff --git a/images/icons/webofscience_color.png b/images/icons/webofscience_color.png new file mode 100755 index 0000000..7125e70 Binary files /dev/null and b/images/icons/webofscience_color.png differ diff --git a/images/icons/youtube.png b/images/icons/youtube.png new file mode 100755 index 0000000..ad0932a Binary files /dev/null and b/images/icons/youtube.png differ diff --git a/images/logo_testata.jpg b/images/logo_testata.jpg new file mode 100755 index 0000000..0762448 Binary files /dev/null and b/images/logo_testata.jpg differ diff --git a/images/mrs_group_log.png b/images/mrs_group_log.png new file mode 100755 index 0000000..3e166c7 Binary files /dev/null and b/images/mrs_group_log.png differ diff --git a/images/scholar.png b/images/scholar.png new file mode 100755 index 0000000..fbcd4ac Binary files /dev/null and b/images/scholar.png differ diff --git a/images/youtube2.png b/images/youtube2.png new file mode 100755 index 0000000..a46952b Binary files /dev/null and b/images/youtube2.png differ diff --git a/index.html b/index.html new file mode 100644 index 0000000..90881a6 --- /dev/null +++ b/index.html @@ -0,0 +1,345 @@ + + + + + + + + + + + + + Giuseppe Silano - Home + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+
+ + +

Contact details

+ +

Ricerca sul Sistema Energetico (RSE) S.p.A.
+ Department of Power Generation Technologies and Materials
+ Via Raffaele Rubattino, 54
+ 20154 Milan, Italy

+ +

e-mails:
+    giuseppe.silano (at) rse-web.it +    giuseppe.silano (at) fel.cvut.cz

+ + + + + + + + +
Phone:   +39 329 954 8196
+ +


+ +

+ +
+

+ + Tenure researcher with a strong interest in software and control of robots and embedded systems. + Currently working on motion planning and control solutions for Unmanned Aerial Vehicles (UAVs). + What excites me most about this field are the challenging and multidisciplinary problems that require me + to use my background in Electronic Engineering, Computer Science and Control Systems to develop integrated solutions. + Here you can find out more about me, my research activities, publications, and open-source projects. + If you are interested in knowing more, drop me a line. + +

+ +

+ + + Robotics + + + Unmanned Aerial Vehicles + + + Formal Methods +

+ +

+ + + Software-in-the-loop + + + Simulation & Control + + + Manipulators + +

+ + + Model Predictive Control + + + Human-Robot Collaboration + +

+ +

+ + + Communication-Aware Robotics + + + Task and Motion Planning + +

+ + + + + +
+ +
+ + + + + +
+ + + +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+ + + diff --git a/info.html b/info.html new file mode 100644 index 0000000..5aebff8 --- /dev/null +++ b/info.html @@ -0,0 +1,276 @@ + + + + + + + + + + + + + Giuseppe Silano - About-the-site + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+ +

+ + The content and design of this website were based from an earlier version of Alexander W. Winkler's website. + If you want to know more about my use of cookies, take a look at the cookies policy. The cookies enabler (and the corresponding + banner) has been strongly inspired by the Nicholas Ruggeri's cookies-enabler. + +

+ + When I decided to build my website (I thought it was a good idea to get to know myself and my work known on the web), I was looking for something easy to manage and + update. Something that was modern and that could help me to publish in a rapid way all my papers and new infos about my research and career. While considering websites + of my colleagues abroad, (e.g., Alexander W. Winkler, James Alan + Preiss), I found out static site generators, in particular jemdoc and Jekyll + . +

+ +

+ + I realized the benefits of a static site: +

+ +
    + +
  • provide improved security over dynamic websites;
  • +

  • improve performance for end users compared to dynamic websites;
  • +

  • ensure fewer or no dependencies on systems such as databases or other application servers;
  • +

  • allow cost savings from utilizing cloud storage, as opposed to a hosted environment.
  • + +

+ +

+ + Looking around websites using such technologies, I saw Alexander W. Winkler's site and I really enjoyed his style. + Therefore, I contacted Alexander expressing my appreciation and asked him to use its earlier style for my website using Jekyll. +

+ +
+ +

The Mechanics

+ +

+ + Jekyll is a simple, extendable, static site generator. You give it text written in your favorite markup language (e.g., TeX or Markdown) and it churns through layouts + to createa static website. Throughout that process you can tweak how you want the site URLs to look, what data gets displayed in the layout, and more. + +

+ To learn the basics of using Jekyll - Static Site Generator, I followed the online course of Mike Dane, + available at the link. The course teaches you everything you need to know + to create a professional and scalable website or blog! +

+ +
+ +

License

+ +

+ + Unless specified otherwise, all design and content within this site is licensed under an Apache License 2.01. + The main site design was not done by me, but rather Alexander W. Winkler, so you should contact + him if you want to use it. The cookies enabler (and the corresponding banner) has been strongly inspired by the + Nicholas Ruggeri's cookies-enabler. +

+ +
+ +

+ + 1. A permissive license whose main conditions require preservation of copyright and license notices. Contributors provide an express grant of patent rights. + Licensed works, modifications, and larger works may be distributed under different terms and without source code. +

+ + + + + +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+ + + diff --git a/projects.html b/projects.html new file mode 100644 index 0000000..76998c6 --- /dev/null +++ b/projects.html @@ -0,0 +1,309 @@ + + + + + + + + + + + + + Giuseppe Silano - Research-Projects + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+ +
+ + October 2022 - Today +

+ + FLOW logo + FLOW is an Horizon Europe project. FLOW boosts and demonstrates multifaceted Electric + Vehicle (EV) smart charging and Vehile-to-Everything (V2X) integration into energy systems thanks to a range of comprehensive solutions providing answers to + the needs of all actors involved. These solutions include highly replicable user-centric products, concepts, configurations and mechanisms to optimize the + operations. Cross-sector harmonization and standardization is delivered to facilitate activities of stakeholders and EV users. Advanced interoperable solutions + enhance planning, operation and assessment of EV charging for seamless integration into the energy system and identification of the most appropriate scenario based + on a multi-criteria model, leveraging appropriate business models and tailored services. FLOW also delivers multi-actor orchestration to ensure data exchange and + synchronisation across actors for Vehicle-Grid-Integration (VGI) and EV flexibility services. Within the project, my role was that of leader from RSE's + Department side (T4.3 leader). + +

+ +

+ +
+ + October 2022 - Today +

+ + ERIGrid2 logo + ERIGrid2 is an Horizon 2020 INFRAIA project. Based on the results from the + ERIGrid-1 project, the successor project ERIGrid 2.0 expanses the research services + and tools of European research infrastructures for validating smart energy networks with the electric power grid as the main backbone. + Committed to the holistic and cyber-physical systems-based validation approach, ERIGrid 2.0 fosters system-level support and education + for industrial and academic researchers in power and energy systems research and technology development. Within the project, my role + was that of work package leader (WP13 - JRA4). + +

+ +

+ +
+ + June 2020 - December 2023 +

+ + Aerial-Core logo + Aerial-Core is an ICT project. It aims to develop core technology + modules and an integrated aerial cognitive robotic system that will have unprecedented capabilities on the operational range and safety + in the interaction with people, or Aerial Co-Workers (ACWs) for applications such as the inspection and maintenance of large linear + infrastructures. The system will integrate aerial robots with different characteristics and will be able to meet the requirements of: + (1) Long range (several kilometres) and local very accurate (subcentimetre) inspection of the infrastructure, (2) maintenance activities + based on aerial manipulation involving force interactions, and (3) aerial co-working safely and efficiently helping human workers in + inspection and maintenance. Within the project, my role was that of leader from CTU side (June 2020 - July 2022, T2.3 and T7.4 leader) + and participant (July 2022 - December 2023). + +

+ +

+ +
+ + October 2019 - May 2023 +

+ + Comp4Drones logo + Comp4Drones is an ECSEL JU project with the aim of providing a framework of key enabling + technologies for safe and autonomous drones. It brings to bear a holistically designed ecosystem from application to electronic components, realized as a + tightly integrated multi-vendor and compositional UAV embedded architecture solution and a tool chain complementing the compositional architecture principles. + The ecosystem aims at supporting (1) efficient customization and incremental assurance of drone embedded platforms, (2) safe autonomous decision making concerning + individual or cooperative missions, (3) trustworthy drone-to-drone and drone-to-ground communications even in presence of malicious attackers and under the + intrinsic platform constraints, and (4) agile and cost-effective compositional design and assurance of drone modules and systems. Within the project, + my role was that of participant. + +

+ +

+ +
+ + March 2019 - February 2020 +

+ + Comp4Drones logo + The Mohamed Bin Zayed International Robotic Challenge (MBZIRC) is a biennial international + robotics competition that provides an ambitious and technologically demanding set of challenges and is open to all teams from all countries. Also, the MBZIRC + competition aims to inspire future robotics through innovative solutions and technological excellence. Within the competition, specifically the “challenge 2”, + autonomous aerial and ground robots have been carried out for navigation and manipulation tasks, in unstructured, outdoor and indoor environments. In particular, + a team of UAVs (Unmanned Aerial Vehicles) and a UGV (Unmanned Ground Vehicle) collaborating to autonomously locate, pick, transport and assemble different types + of brick shaped objects to build pre-defined structures, in an outdoor environment. Those challenge is motivated by construction automation and autonomous robot + based 3D printing of large structures. Within the competition, my role was that of participant. More information about the challenges, the partecipants + and the achivied results can be found at http://mbzirc2020team.laas.fr/. + +

+ +

+ +
+ + September 2018 - November 2021 +

+ + Comp4Drones logo + AFarCloud is an ECSEL JU project with the aim of providing a distributed platform for autonomous + farming that will allow the integration and cooperation of agriculture Cyber Physical Systems in real-time in order to increase efficiency, productivity, animal + health, food quality and reduce farm labour costs. This platform will be integrated with farm management software and will support monitoring and decision-making + solutions based on big data and real time data mining techniques. The AFarCloud project also aims to make farming robots accessible to more users by enabling farming + vehicles to work in a cooperative mesh, thus opening up new applications and ensuring re-usability, as heterogeneous standard vehicles can combine their capabilities + in order to lift farmer revenue and reduce labour costs. Within the project, my role was that of leader from UniSannio side (T3.2 leader). + +

+ +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+ + + diff --git a/publications.html b/publications.html new file mode 100644 index 0000000..ad68514 --- /dev/null +++ b/publications.html @@ -0,0 +1,2293 @@ + + + + + + + + + + + + + Giuseppe Silano - Publications + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+ +

+ + Below is a list of my publications, including book chapters, journals, and + conference papers. I also reported my preprints, posters, + workshop contributions, and workshop sessions, and PhD thesis. Drop me an + e-mail if you are looking for the preprint of some specific paper not available here.

+ + + +

+ + Please see my Google Scholar profile for a full list of citations and co-authors. +

+ +
+ +

Book Chapters

+ +

+ +

  • G. Silano and L. Iannelli, “CrazyS: a software-in-the-loop simulation platform for the Crazyflie 2.0 nano-quadcopter,” in “Robot Operating System (ROS): The Complete Reference (Volume 4),” A. Koubaa, Ed. , Cham: Springer International Publishing, pp. 81–115, 2020.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ +
+ +

Preprints

+ +

+ +

  • C. A. Dimmig, G. Silano, K. McGuire, C. Gabellieri, W. Honig, J. Moore, and M. Kobilarov, “Survey of Simulators for Aerial Robots,” pp. 1–8, November, 2023.
    + + + + + + + + + + + + + + + + + + + + + + + +
+

+ +
+ +

Journals

+ +

+ +

  • A. Caballero and G. Silano, “A Signal Temporal Logic Motion Planner for Bird Diverter Installation Tasks with Multi-Robot Aerial Systems,” IEEE Access, vol. 11, pp. 81361–81377, July, 2023. Impact factor: 3.9.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • D. Hert et al., “MRS Drone: A Modular Platform for Real-World Deployment of Aerial Multi-Robot Systems,” Journal of Intelligent & Robotic Systems, vol. 108, no. 64, pp. 1–34, July, 2023. Impact factor: 3.3.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • A. Ahmad, D. Bonilla Licea, G. Silano, T. Baca, and M. Saska, “PACNav: A collective navigation approach for UAV swarms deprived of communication and external localization,” Bioinspiration & Biomimetics, vol. 17, no. 6, pp. 1–19, November, 2022. Impact factor: 2.985.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • A. Basiri, V. Mariani, G. Silano, M. Aatif, L. Iannelli, and L. Glielmo, “A survey on the application of path-planning algorithms for multi-rotor UAVs in precision agriculture,” The Journal of Navigation, vol. 75, no. 2, pp. 364–383, January, 2022. Impact factor: 1.995.
    + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano and L. Iannelli, “MAT-Fly: An Educational Platform for Simulating Unmanned Aerial Vehicles Aimed to Detect and Track Moving Objects,” IEEE Access, vol. 9, pp. 39333–39343, March, 2021. Impact factor: 3.745.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano, T. Baca, R. Penicka, D. Liuzza, and M. Saska, “Power Line Inspection Tasks with Multi-Aerial Robot Systems via Signal Temporal Logic Specifications,” IEEE Robotics and Automation Letters, vol. 6, no. 2, pp. 4169–4176, April, 2021. Impact factor: 3.608. Accepted also to ICRA’21.
    + + + + + + + + + + + + + + + + + + + + + + + +
+

+ +
+ +

Conferences

+ +

+ +

  • D. Bonilla Licea, G. Silano, M. Ghogho, and M. Saska, “Omnidirectional Multi-Rotor Aerial Vehicle Pose Optimization: A Novel Approach to Physical Layer Security,” in 2024 IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP), pp. 9021–9025, April, 2024, Seoul, Korea.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano, A. Afifi, M. Saska, and A. Franchi, “A Signal Temporal Logic Planner for Ergonomic Human–Robot Collaboration,” in 2023 International Conference on Unmanned Aircraft Systems (ICUAS), pp. 328–335, June, 2023, Lazarski University, Warsaw, Poland.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • D. Bonilla Licea, G. Silano, M. Ghogho, and M. Saska, “Communications-Aware Robotics: Challenges and Opportunities,” in 2023 International Conference on Unmanned Aircraft Systems (ICUAS), pp. 366–371, June, 2023, Lazarski University, Warsaw, Poland.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • V. Cataffo, G. Silano, L. Iannelli, V. Puig, and L. Glielmo, “A Nonlinear Model Predictive Control Strategy for Autonomous Racing of Scale Vehicles,” in 2022 IEEE International Conference on Systems, Man, and Cybernetics (SMC), pp. 100–105, October, 2022, Prague, Czech Republic.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • D. Hert et al., “MRS Modular UAV Hardware Platforms for Supporting Research in Real-World Outdoor and Indoor Environments,” in 2022 International Conference on Unmanned Aircraft Systems (ICUAS), pp. 1264–1273, June, 2022, Dubrovnik, Croatia.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • A. Calvo, G. Silano, and J. Capitan, “Mission Planning and Execution in Heterogeneous Teams of Aerial Robots supporting Power Line Inspection Operations,” in 2022 International Conference on Unmanned Aircraft Systems (ICUAS), pp. 1644–1649, June, 2022, Dubrovnik, Croatia.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • A. Dmytruk, G. Silano, D. Bicego, D. Bonilla Licea, and M. Saska, “A Perception-Aware NMPC for Vision-Based Target Tracking and Collision Avoidance with a Multi-Rotor UAV,” in 2022 International Conference on Unmanned Aircraft Systems (ICUAS), pp. 1668–1673, June, 2022, Dubrovnik, Croatia.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • L. Demkiv, M. Ruffo, G. Silano, J. Bednar, and M. Saska, “An Application of Stereo Thermal Vision for Preliminary Inspection of Electrical Power Lines by MAVs,” in 2021 Aerial Robotic Systems Physically Interacting with the Environment (AIRPHARO), pp. 1–8, October, 2021, Biograd na Moru, Croatia.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • D. Bonilla Licea, G. Silano, M. Ghogho, and M. Saska, “Optimum Trajectory Planning for Multi-Rotor UAV Relays with Tilt and Antenna Orientation Variations,” in 29th European Signal Processing Conference (EUSIPCO), pp. 1586–1590, September, 2021, Dublin, Ireland.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • M. Terlizzi, G. Silano, L. Russo, M. Aatif, A. Basiri, V. Mariani, L. Iannelli, and L. Glielmo, “A Vision-Based Algorithm for a Path Following Problem,” in 2021 International Conference on Unmanned Aircraft Systems (ICUAS), pp. 1630–1635, June, 2021, Athens, Greece.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano, J. Bednar, T. Nascimento, J. Capitan, M. Saska, and A. Ollero, “A Multi-Layer Software Architecture for Aerial Cognitive Multi-Robot Systems in Power Line Inspection Tasks,” in 2021 International Conference on Unmanned Aircraft Systems (ICUAS), pp. 1624–1629, June, 2021, Athens, Greece.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano, P. Oppido, and L. Iannelli, “Software-in-the-loop simulation for improving flight control system design: a quadrotor case study,” in 2019 IEEE International Conference on Systems, Man, and Cybernetics (SMC), pp. 466–471, October, 2019, Bari, Italy.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • P. Daponte, L. De Vito, L. Glielmo, L. Iannelli, D. Liuzza, F. Picariello, and G. Silano, “A review on the use of drones for precision agriculture,” in 2018 1st Workshop - Metrology for Agriculture and Foresty (MetroAgriFor), pp. 1–11, October, 2018, Ancona, Italy.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano, E. Aucone, and L. Iannelli, “CrazyS: A Software-In-The-Loop Platform for the Crazyflie 2.0 Nano-Quadcopter,” in 2018 26th Mediterranean Conference on Control and Automation (MED), pp. 352–357, June, 2018, Zadar, Croatia.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano and L. Iannelli, “An educational simulation platform for GPS-denied unmanned Aerial Vehicles aimed to the detection and tracking of moving objects,” in 2016 IEEE Conference on Control Applications (CCA), pp. 1018–1023, September, 2016, Buenos Aires, Argentina.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ +
+ +

Posters

+ +

+ +

  • G. Silano, P. Oppido, and L. Iannelli, “Software-in-the-loop simulation for improving flight control system design: a quadrotor case study,” in SIDRA (Italian Society of Automatic Control), National Meeting, September, 2019, Ancona, Italy.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano and L. Iannelli, “An educational simulation platform for Unmanned Aerial Vehicles aimed to detect and track moving objects,” in SIDRA (Italian Society of Automatic Control), National Meeting, September, 2017, Milan, Italy.
    + + + + + + + + + + + + + + + + + + + + + + + +
+

+ +
+ +

Workshop Contributions

+ +

+ +

  • G. Silano, V. Kratky, M. Vrba, C. Papaioannidis, I. Mademlis, R. Penicka, I. Pitas, and M. Saska, “Human-Swarm Interaction with a Gesture-Controlled Aerial Robot Formation for Safety Monitoring Applications,” in 2023 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 1–5, October, 2023, Contribution accepted for discussion at the workshop session: "Human Multi-Robot Interaction Workshop", Detroit, Michigan, USA.
    + + + + + + + + + + + + + + + + + + + + + +
  • +
  • A. Caballero and G. Silano, “Automating Bird Diverter Installation through Multi-Aerial Robots and Signal Temporal Logic Specifications,” in 2023 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 1–2, October, 2023, Contribution accepted for discussion at the workshop session: "Formal methods techniques in robotics systems: Design and control", Detroit, Michigan, USA.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano, A. Afifi, M. Saska, and A. Franchi, “Ergonomic Collaboration between Humans and Robots: An Energy-Aware Signal Temporal Logic Perspective,” in 2023 IEEE International Conference on Robotics and Automation (ICRA), pp. 1–4, June, 2023, Contribution accepted for discussion at the workshop session: "Energy Efficient Aerial Robotic Systems", ExCeL, London, UK.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano et al., “Coordination of a Heterogeneous Team of Aerial Robots to Support Power Line Inspection Operations,” in 2022 International Conference on Unmanned Aircraft Systems (ICUAS), June, 2022, Contribution accepted for discussion at the tutorial session: "AERIAL-CORE – Boosting the adoption of aerial robotics in real-world applications", Drubovnik, Croatia.
    + + + + + + + + + + + + + + + + + + + +
  • +
  • G. Silano, D. Liuzza, L. Iannelli, and M. Saska, “A framework for power line inspection tasks with multi-robot systems from signal temporal logic specifications,” in SIDRA (Italian Society of Automatic Control), National Meeting, September, 2020, Cagliari, Italy.
    + + + + + + + + + + + + + + + + + + + + + + + +
  • +
  • A. Afifi, G. Silano, M. Tognon, G. Oriolo, and A. Franchi, “A General Control Architecture for Visual Servoing and Physical Interaction Tasks for Aerial Vehicles,” in MBZIRC Symposium 2020, the First International Robotic Challenges Symposium, February, 2020, Abu Dhabi, United Arab Emirates.
    + + + + + + + + + + + + + + + + + +
+

+ +
+ + + +
+ +

Miscellaneous

+ +

+ +

  • T. Příhodová, G. Silano, A. Ahmad, V. Krátký, T. Báča, P. Petráček, V. Sasková, J. Bednář, and M. Saska, “2022 IEEE Robotics and Automation Society Summer School on Multi-Robot Systems in Prague [Education],” IEEE Robotics & Automation Magazine, vol. 30, no. 1, pp. 104–106, March, 2023. Impact factor: 5.229.
    + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ +
+ +

PhD Thesis

+ +

+ +

  • G. Silano, “Software-in-the-loop Methodologies for the Analysis and Control Design of Small UAV Systems,” PhD thesis, University of Sannio in Benevento, July, 2020.
    + + + + + + + + + + + + + + + + + + + +
+

+ +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+ + + diff --git a/publications/2023_IEEE_RAM.pdf b/publications/2023_IEEE_RAM.pdf new file mode 100644 index 0000000..0200b9f Binary files /dev/null and b/publications/2023_IEEE_RAM.pdf differ diff --git a/publications/Bioinspired22.pdf b/publications/Bioinspired22.pdf new file mode 100644 index 0000000..1bc11fd Binary files /dev/null and b/publications/Bioinspired22.pdf differ diff --git a/publications/EUSIPCO_2021.pdf b/publications/EUSIPCO_2021.pdf new file mode 100755 index 0000000..a26baec Binary files /dev/null and b/publications/EUSIPCO_2021.pdf differ diff --git a/publications/ICASSP-2024.pdf b/publications/ICASSP-2024.pdf new file mode 100644 index 0000000..c1a8884 Binary files /dev/null and b/publications/ICASSP-2024.pdf differ diff --git a/publications/ICRA_2023_Energy_Efficient_Aerial_Ro.pdf b/publications/ICRA_2023_Energy_Efficient_Aerial_Ro.pdf new file mode 100644 index 0000000..7bbe162 Binary files /dev/null and b/publications/ICRA_2023_Energy_Efficient_Aerial_Ro.pdf differ diff --git a/publications/ICUAS21_Silano_I.pdf b/publications/ICUAS21_Silano_I.pdf new file mode 100755 index 0000000..f9f1587 Binary files /dev/null and b/publications/ICUAS21_Silano_I.pdf differ diff --git a/publications/ICUAS21_Silano_II.pdf b/publications/ICUAS21_Silano_II.pdf new file mode 100755 index 0000000..dbd7294 Binary files /dev/null and b/publications/ICUAS21_Silano_II.pdf differ diff --git a/publications/ICUAS22_Silano_I.pdf b/publications/ICUAS22_Silano_I.pdf new file mode 100755 index 0000000..71b6a0b Binary files /dev/null and b/publications/ICUAS22_Silano_I.pdf differ diff --git a/publications/ICUAS22_Silano_II.pdf b/publications/ICUAS22_Silano_II.pdf new file mode 100755 index 0000000..d81f110 Binary files /dev/null and b/publications/ICUAS22_Silano_II.pdf differ diff --git a/publications/ICUAS22_Silano_III.pdf b/publications/ICUAS22_Silano_III.pdf new file mode 100644 index 0000000..a82a526 Binary files /dev/null and b/publications/ICUAS22_Silano_III.pdf differ diff --git a/publications/ICUAS23-I.pdf b/publications/ICUAS23-I.pdf new file mode 100644 index 0000000..bd8f061 Binary files /dev/null and b/publications/ICUAS23-I.pdf differ diff --git a/publications/ICUAS23-II.pdf b/publications/ICUAS23-II.pdf new file mode 100644 index 0000000..75aacc0 Binary files /dev/null and b/publications/ICUAS23-II.pdf differ diff --git a/publications/IROS_2023_WORKSHOP_STL_bird_diverter.pdf b/publications/IROS_2023_WORKSHOP_STL_bird_diverter.pdf new file mode 100644 index 0000000..108bfaa Binary files /dev/null and b/publications/IROS_2023_WORKSHOP_STL_bird_diverter.pdf differ diff --git a/publications/JINT_HW_2023.pdf b/publications/JINT_HW_2023.pdf new file mode 100644 index 0000000..c76ebb0 Binary files /dev/null and b/publications/JINT_HW_2023.pdf differ diff --git a/publications/MAT-Fly.pdf b/publications/MAT-Fly.pdf new file mode 100755 index 0000000..4255cb3 Binary files /dev/null and b/publications/MAT-Fly.pdf differ diff --git a/publications/SMC22.pdf b/publications/SMC22.pdf new file mode 100644 index 0000000..788d097 Binary files /dev/null and b/publications/SMC22.pdf differ diff --git a/publications/airpharo_2021_Silano.pdf b/publications/airpharo_2021_Silano.pdf new file mode 100755 index 0000000..2f351bc Binary files /dev/null and b/publications/airpharo_2021_Silano.pdf differ diff --git a/publications/automaticaIT_2017.pdf b/publications/automaticaIT_2017.pdf new file mode 100755 index 0000000..2f2f935 Binary files /dev/null and b/publications/automaticaIT_2017.pdf differ diff --git a/publications/automaticaIT_2019.pdf b/publications/automaticaIT_2019.pdf new file mode 100755 index 0000000..2ac87fb Binary files /dev/null and b/publications/automaticaIT_2019.pdf differ diff --git a/publications/automaticaIT_2020.pdf b/publications/automaticaIT_2020.pdf new file mode 100755 index 0000000..ec5a6dc Binary files /dev/null and b/publications/automaticaIT_2020.pdf differ diff --git a/publications/birdDiverter.pdf b/publications/birdDiverter.pdf new file mode 100644 index 0000000..a74944b Binary files /dev/null and b/publications/birdDiverter.pdf differ diff --git a/publications/cca16.pdf b/publications/cca16.pdf new file mode 100755 index 0000000..dfbd680 Binary files /dev/null and b/publications/cca16.pdf differ diff --git a/publications/iros2023_hsi_ws.pdf b/publications/iros2023_hsi_ws.pdf new file mode 100644 index 0000000..c563bcd Binary files /dev/null and b/publications/iros2023_hsi_ws.pdf differ diff --git a/publications/med18.pdf b/publications/med18.pdf new file mode 100755 index 0000000..e4866f8 Binary files /dev/null and b/publications/med18.pdf differ diff --git a/publications/metroagrifor18.pdf b/publications/metroagrifor18.pdf new file mode 100755 index 0000000..92f84bc Binary files /dev/null and b/publications/metroagrifor18.pdf differ diff --git a/publications/ral21.pdf b/publications/ral21.pdf new file mode 100755 index 0000000..cc86e0a Binary files /dev/null and b/publications/ral21.pdf differ diff --git a/publications/rosChapter19.pdf b/publications/rosChapter19.pdf new file mode 100755 index 0000000..86e96e3 Binary files /dev/null and b/publications/rosChapter19.pdf differ diff --git a/publications/smc19.pdf b/publications/smc19.pdf new file mode 100755 index 0000000..c0a43ee Binary files /dev/null and b/publications/smc19.pdf differ diff --git a/publications/survey_simulators.pdf b/publications/survey_simulators.pdf new file mode 100644 index 0000000..333099d Binary files /dev/null and b/publications/survey_simulators.pdf differ diff --git a/research.html b/research.html new file mode 100644 index 0000000..ab37107 --- /dev/null +++ b/research.html @@ -0,0 +1,250 @@ + + + + + + + + + + + + + Giuseppe Silano - Research + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+ +

Recent activites

+ +

+ + In my current research, I am focusing on Model Predictive Control (MPC) applied to multi-rotor aerial systems with arbitrarily positioned and + oriented rotors. The objective is to leverage MPC as a high-performance constrained and predictive control technique in this context. + Moreover, I am investigating the application of Temporal Logic, specifically Signal Temporal Logic (STL), as a mission specification language for + path planning problems. STL allows for the incorporation of explicit timing constraints, effectively translating the entire problem into a nonlinear + non-convex non-smooth max-min challenge. + Additionally, I am exploring the exciting field of Human-Robot Interaction (HRI). My research aims to develop systems that assist human + technicians in hard-to-reach locations, with a particular focus on scenarios involving maintenance and inspection operations. + Furthermore, the area of communication-aware robotics intrigues me due to its interdisciplinary nature, addressing the challenges of + maintaining connectivity and robust information flow in robotic networks. + This scientific research seeks to contribute valuable insights and advancements to the fields of robotics, control systems, and + human-robot collaboration.

+
+ +

Doctorate topic

+

+ + The aim of my research was to illustrate the role and the effectiveness of software-in-the-loop (SIL) methodologies for the analysis + and control design of flight controllers for small UAV systems. The research proposes a novel SIL methodology to detect and manage instabilities + of multi-rotor systems that otherwise might not arise when considering only MATLAB/Simulink simulations. The use of the SIL methodology + allows to understand the behavior of the flight control system by comparing and evaluating different scenarios, with a details level quite close + to reality thanks to the use of the Gazebo robotics simulator. At the same time, it is possible to discover issues that a model-in-the-loop (MIL) + simulation does not necessarily detect, even if carried out through a multi-physics co-simulation approach. +

+ +
+ +

Thesis topics

+

+ + Students interested on automatic control topics for their thesis (both Bachelor and Master degrees) can drop me an + e-mail. +

+ +
+ +

Info

+ +

+ + If you would like to know more about me, please stay tuned on this web page, or feel free to contact me. + Also, check out my Publications and Software pages for my latest publications and repositories, + respectively. +

+ +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+ + + diff --git a/robots.txt b/robots.txt new file mode 100644 index 0000000..5a6ff90 --- /dev/null +++ b/robots.txt @@ -0,0 +1 @@ +Sitemap: http://giuseppesilano.net/sitemap.xml diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 0000000..a41d20a --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,159 @@ + + + +http://giuseppesilano.net/cookies.html + + +http://giuseppesilano.net/cv.html + + +http://giuseppesilano.net/highlights.html + + +http://giuseppesilano.net/ + + +http://giuseppesilano.net/info.html + + +http://giuseppesilano.net/projects.html + + +http://giuseppesilano.net/publications.html + + +http://giuseppesilano.net/research.html + + +http://giuseppesilano.net/software.html + + +http://giuseppesilano.net/video.html + + +http://giuseppesilano.net/videos_archive/video1.html + + +http://giuseppesilano.net/videos_archive/video2.html + + +http://giuseppesilano.net/files/cv_web.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/2023_IEEE_RAM.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/Bioinspired22.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/EUSIPCO_2021.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/ICASSP-2024.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/ICRA_2023_Energy_Efficient_Aerial_Ro.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/ICUAS21_Silano_I.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/ICUAS21_Silano_II.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/ICUAS22_Silano_I.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/ICUAS22_Silano_II.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/ICUAS22_Silano_III.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/ICUAS23-I.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/ICUAS23-II.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/IROS_2023_WORKSHOP_STL_bird_diverter.pdf +2024-04-01T15:38:07+00:00 + + +http://giuseppesilano.net/publications/JINT_HW_2023.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/MAT-Fly.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/SMC22.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/airpharo_2021_Silano.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/automaticaIT_2017.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/automaticaIT_2019.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/automaticaIT_2020.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/birdDiverter.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/cca16.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/iros2023_hsi_ws.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/med18.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/metroagrifor18.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/ral21.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/rosChapter19.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/smc19.pdf +2024-04-01T15:38:08+00:00 + + +http://giuseppesilano.net/publications/survey_simulators.pdf +2024-04-01T15:38:08+00:00 + + diff --git a/software.html b/software.html new file mode 100644 index 0000000..0df4f81 --- /dev/null +++ b/software.html @@ -0,0 +1,412 @@ + + + + + + + + + + + + + Giuseppe Silano - Software + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+ + + + + +
+ + December 28, 2021 · v4.0.13, v5.0.9, v6.0.9, and v7.0.1 +

+ + CrazyS is an extension of the ROS package RotorS, aimed at modeling, developing, and integrating the Crazyflie 2.0 nano-quadcopter in the + physics based simulation environment Gazebo. Such simulation platform allows to understand quickly the behavior of the + flight control system by comparing and evaluating different indoor and outdoor scenarios, with a details level quite close + to reality. The proposed extension, running on Kinetic Kame (Ubuntu 16.04 along with Gazebo 7 and 9, v5.0.9 and v6.0.9) ROS release but fully + compatible with the Indigo Igloo (Ubuntu 14.04 along with Gazebo 5, v4.0.13), Melodic Morenia (Ubuntu 18.04 along with Gazebo 9, v6.0.9) and + Noetic Ninjemys (Ubuntu 20.04 along with Gazebo 11, v7.0.1) ones, expands the RotorS capabilities by considering the Crazyflie 2.0 + physical model, its flight control system and the Crazyflie's on-board IMU, as well. The contribution can be also considered as + a reference guide for expanding the RotorS functionalities in the UAVs field, by facilitating the integration of new aerial robots. + +
+ + + Star + + + Download + + + Subscribe + + + Fork + +

+ +
+ +
+
+ +
+ + February 1, 2024 · v2024.02.01 +

+ + EuopeCV is an unofficial LaTeX implementation of the standard model for curricula vitae (the Europass CV) as + recommended by the European Commission. The Europass CV replaces the European CV, launched in 2002, and defines both the content + and the layout of a curriculum vitae. Therefore, the europecv class created by + Nicola Vitacolonna and now maintained by me, provides support for the latter, and for the former as far as personal + information and spoken languages are concerned. This class tries to be as close as possible to the standard model without sacrificing + flexibility. Although it is primarily intended for users of the European Union, the class can be used for any kind of curriculum vitae + (possibly with the options \texttt{notitle} and \texttt{nologo}), or even for other kinds of documents: for example, + the official documentation file has been typeset using the \textsf{europecv} class. The source files are included in the package so, please, + feel free to contribute. Finally, the package is available on CTAN pages. + +
+ + + Star + + + Download + + + Subscribe + + + Fork + +

+ +
+ +
+
+ +
+ + August 21, 2018 · v2018.07.21 +

+ + MAT-Fly is a numerical simulation platform for multi-rotors characterized by the ease of use and control development. The platform is based + on MATLAB and the MathWorks Virtual Reality (VR) Toolbox that work together + to simulate the behavior of a drone (quadrotor) in a 3D environment while tracking a car that moves along a non trivial path. The VR toolbox has been chosen due + to the familiarity that students have with MATLAB and because it allows to move the attention to the classifier, the tracker, the reference generator + and the trajectory tracking control thanks to its simple structure. The overall architecture is quite modular so that each block can be easily replaced + with others by simplifying the development phase and by allowing to add even more functionalities. The platform has been developed using the 2015b release + of MATLAB but it is compatible with any other successive MATLAB release. + +
+ + + Star + + + Download + + + Subscribe + + + Fork + +

+ +
+ +
+
+ +
+ + December 27, 2019 · v0.2.2, v1.0.1 and v2.0.1 +

+ + BebopS contains the developed ROS code for the Industrial Challenge of the 26th Mediterranean Conference on Control and Automation + (MED’18)1. The code aimed at simulating the dynamics of the + Parrot Bebop 2 together with the flight controller (both high and low levels) when external disturbances (e.g., wind gusts) acting on it. The control algorithms + were designed in MATLAB/Simulink and validated in Gazebo by using the MathWorks Robotics System Toolbox (RST). Therefore, the repository contains both ROS + nodes and launch files needed to simulate the drone behavior when a tracking algorithm is run. Also, on GitHub the glue code written during the challenge to make able + the control algorithm to exchange data on the ROS network is available. Such code was needed for sending commands to and receiving data from the vehicle and the + Motion Capture (MoCap) systems Vicon. Furthermore, the repository contains the developing ROS code to connect the controller to the + Parrot Sphinx simulator by including the Parrot Bebop onboard firmware in the loop. + In this way, details like synchronization, timing issues, fixed-point computation, overflow, divisions-by-zero, can be isolated and investigated in detail. + +
+ + + Star + + + Download + + + Subscribe + + + Fork + +

+ +
+ +
+
+ +
+ + July 25, 2022 · v0.0.1 and v1.0.0 +

+ + NMPC strategy for Autonomous Racing of Scale Vehicles is an extension of the F1TENTH simulator. + The F1TENTH simulator mirrors the behavior of autonomous racing scale vehicles. The repository is endowed with the necessary files to run the Nonlinear Model Predictive + Control (NMPC) strategy described in the paper accepted for publication to the 2022 IEEE International Conference on Systems, Man, + and Cybernetics (SMC). The contribution can be also considered as a reference guide for expanding the F1TENTH simulator functionalities by facilitating the + integration of the new control algorithms and features. Some simple case studies are considered to evaluate the performance of the retrieve controller. The code is + released under Apache license, thus making it available for scientific and educational activities. The platform was developed using Ubuntu 18.04 and the Melodic + Morenia version of ROS, but it is also fully compatible with Ubuntu 20.04 along with the Noetic Ninjemys distribution of ROS. Although backwards compatibility is + guarantee, i.e., the platform is fully compatible with Melodic Morenia version of ROS and Ubuntu 18.04, such configuration is not recommended since the ROS support + is expected to be closed in April 2023. +
+ + + Star + + + Download + + + Subscribe + + + Fork + +

+ +
+ +
+
+ +
+ +

+ + Minor contributions on various packages have been done to several open-source projects, such as + bebop_autonomy, ros-travis-integration, + RotorS (wiki and pull request), Vision-Based Path Following Algorithm, + multi-robot inspection and maintenance software architecture, + PACNav, styles, + kaobook, and MATMPC. In addition, I have published on Overleaf2 under LaTeX Project Public 1.3c + license an open-source template to help students write their thesis in LaTeX + 3 and a collection of draws made by using the tikzpicture LaTeX package. +

+ +
+ +

+ + 1. The MED'18 conference report is available on the IEEE Xplore portal. +
+ 2. Overleaf is an online LaTeX editor that allows real-time collaboration and online compiling of projects to PDF format. +
+ 3. It is aimed for UniSannio's students and was written in Italian. +

+ +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+ + + diff --git a/uploads/projects/LogoC4D.png b/uploads/projects/LogoC4D.png new file mode 100755 index 0000000..5e9a47f Binary files /dev/null and b/uploads/projects/LogoC4D.png differ diff --git a/uploads/projects/LogoC4D_White.png b/uploads/projects/LogoC4D_White.png new file mode 100755 index 0000000..7e9d49a Binary files /dev/null and b/uploads/projects/LogoC4D_White.png differ diff --git a/uploads/projects/MBZIRC_laas-team_logo_vertical_400px.jpg b/uploads/projects/MBZIRC_laas-team_logo_vertical_400px.jpg new file mode 100755 index 0000000..e401721 Binary files /dev/null and b/uploads/projects/MBZIRC_laas-team_logo_vertical_400px.jpg differ diff --git a/uploads/projects/aerial-core_logo.png b/uploads/projects/aerial-core_logo.png new file mode 100755 index 0000000..b0a0d90 Binary files /dev/null and b/uploads/projects/aerial-core_logo.png differ diff --git a/uploads/projects/aerial-core_logo2.png b/uploads/projects/aerial-core_logo2.png new file mode 100755 index 0000000..dcd93d0 Binary files /dev/null and b/uploads/projects/aerial-core_logo2.png differ diff --git a/uploads/projects/erigrid2_logo.png b/uploads/projects/erigrid2_logo.png new file mode 100644 index 0000000..0c19b4c Binary files /dev/null and b/uploads/projects/erigrid2_logo.png differ diff --git a/uploads/projects/flow_logo.png b/uploads/projects/flow_logo.png new file mode 100644 index 0000000..2630f7a Binary files /dev/null and b/uploads/projects/flow_logo.png differ diff --git a/uploads/projects/logo-afarcloud.png b/uploads/projects/logo-afarcloud.png new file mode 100755 index 0000000..4962873 Binary files /dev/null and b/uploads/projects/logo-afarcloud.png differ diff --git a/video.html b/video.html new file mode 100644 index 0000000..a76e8d9 --- /dev/null +++ b/video.html @@ -0,0 +1,332 @@ + + + + + + + + + + + + + Giuseppe Silano - Video + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+ +
+ +

+ + This collection is taken from the following youtube channels: +

    +
  1. Youtube channel of the MRS group
  2. +
  3. Youtube channel when I was at LAAS-CNRS
  4. +
  5. Youtube channel (personal channel)
  6. +
  7. Youtube channel of Bitcraze AB
  8. +
+ Do not forget to watch also the videos attached to the publications. +

+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ +

+
+

+ PACNav: Collective Navigation of UAV Swarms without Communication and External Localization +

+
+

+ +

+
+

+ [EXP] A STL Motion Planner for Bird Diverter Installation Tasks with Multi-Robot Aerial Systems +

+
+

+ +

+
+

+ [GAZEBO] A STL Motion Planner for Bird Diverter Installation Tasks with Multi-Robot Aerial Systems +

+
+

+ +

+
+

+ A Nonlinear Model Predictive Control Strategy for Autonomous Racing of Scale Vehicles (SMC 2022 Video Pitch) +

+
+

+ +

+
+

+ A Nonlinear Model Predictive Control Strategy for Autonomous Racing of Scale Vehicles +

+
+

+ +

+
+

+ A Signal Temporal Logic Planner for Ergonomic Human-Robot Collaboration +

+
+
+ + +
+
+ + +
+ Next Page → +
+ +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+
+ + diff --git a/videos_archive/video1.html b/videos_archive/video1.html new file mode 100644 index 0000000..4d1fad1 --- /dev/null +++ b/videos_archive/video1.html @@ -0,0 +1,319 @@ + + + + + + + + + + + + + Giuseppe Silano - Video + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ +

+
+

+ Power Line Inspection with Multi-UAV Systems via STL Specifications +

+
+

+ +

+
+

+ Talk at Automatica.it 2020 +

+
+

+ +

+
+

+ LAAS-CNRS team MBZIRC 2020 +

+
+

+ +

+
+

+ MAT-Fly: an educational platform for simulating Unammed Aerial Vehicles aimed to detect and track moving objects +

+
+

+ +

+
+

+ Software-in-the-loop simulation for improving flight control system design: a quadrotor case study +

+
+

+ +

+
+

+ CrazyS: A Software-In-The-Loop Platform for the Crazyflie 2.0 Nano-Quadcopter +

+
+
+ +
+
+ + +
+ ← Previous Page +               +
+ + +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+
+ + diff --git a/videos_archive/video2.html b/videos_archive/video2.html new file mode 100644 index 0000000..3a04528 --- /dev/null +++ b/videos_archive/video2.html @@ -0,0 +1,317 @@ + + + + + + + + + + + + + Giuseppe Silano - Video + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+ +
+
+ +
+
+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ +

+
+

+ When power lines are inspected by drones - Když elektrické vedení kontrolují drony +

+
+

+ +

+
+

+ A Multi-Layer Software Architecture for Aerial Cognitive Multi-Robot System (ICUAS 2021 Video Pitch) +

+
+

+ +

+
+

+ Power Line Inspection Tasks With Multi-Aerial Robot Systems Via STL Specific (ICRA 2021 Video Pitch) +

+
+

+ +

+
+

+ Ergonomic Collaboration between Humans and Robots: An Energy-Aware Signal Temporal Logic Perspective +

+
+

+ +

+
+

+ The Role of Robotics Simulators for Unmanned Aerial Vehicles - ICRA 2023 workshop +

+
+

+ +

+
+

+ A Perception-Aware NMPC for Vision-Based Target Tracking and Collision Avoidance with a Multi-Rotor +

+
+
+ + +
+ ← Previous Page +               + Next Page → +
+ + +
+ +
+ +
+
+ +

+ + LinkedIn +  ·  + + GitHub +  ·  + + Gist +  ·  + + Google Scholar +  ·  + + Researchgate +  ·  + + YouTube +  ·  + + ORCID +  ·  + + Scopus +  ·  + + WebOfScience +

+ +

+ © Giuseppe Silano. Built with Jekyll + and Bootstrap. Based on a design by Alexander W. Winkler. +

+ + + + + + + + + + + + +
+
+
+
+
+
+ +