{"id":4,"date":"2010-10-15T08:40:46","date_gmt":"2010-10-15T08:40:46","guid":{"rendered":"https:\/\/luini.deib.polimi.it\/?page_id=4"},"modified":"2026-06-05T13:36:28","modified_gmt":"2026-06-05T13:36:28","slug":"lorenzo-luini","status":"publish","type":"page","link":"https:\/\/luini.deib.polimi.it\/","title":{"rendered":"Lorenzo Luini"},"content":{"rendered":"<h3><em>Associate Professor of Electromagnetic Fields<\/em><\/h3>\n<p><span style=\"font-family: trebuchet ms,geneva; font-size: 12pt;\"><strong><img loading=\"lazy\" decoding=\"async\" class=\" alignleft wp-image-3\" style=\"margin-right: 8px; border: 1px solid #777777; margin-top: 12px; margin-bottom: 4px; float: left;\" src=\"http:\/\/luini.deib.polimi.it\/wp-content\/uploads\/2010\/10\/LL2-77d.jpg\" alt=\"LL2\" width=\"233\" height=\"233\" srcset=\"https:\/\/luini.deib.polimi.it\/wp-content\/uploads\/2010\/10\/LL2-77d.jpg 960w, https:\/\/luini.deib.polimi.it\/wp-content\/uploads\/2010\/10\/LL2-77d-300x300.jpg 300w, https:\/\/luini.deib.polimi.it\/wp-content\/uploads\/2010\/10\/LL2-77d-150x150.jpg 150w, https:\/\/luini.deib.polimi.it\/wp-content\/uploads\/2010\/10\/LL2-77d-768x768.jpg 768w\" sizes=\"auto, (max-width: 233px) 100vw, 233px\" \/><\/strong><\/span><\/p>\n<p><span style=\"font-family: trebuchet ms,geneva; font-size: 18pt;\">\u00a0<em>Politecnico di Milano<\/em><br \/><\/span><span style=\"font-family: trebuchet ms,geneva; font-size: 12pt;\">\u00a0 DEIB \u2013 Dipartimento di Elettronica, Informazione e Bioingegneria<br \/><\/span><span style=\"font-family: trebuchet ms,geneva; font-size: 12pt;\">\u00a0 Building 20, Via Ponzio 34\/5, 20133 \u2013 Milano (Italy)<br \/><\/span><span style=\"font-family: trebuchet ms,geneva; font-size: 12pt;\">\u00a0 Office: 050 (third floor)<br \/><\/span><span style=\"font-family: trebuchet ms,geneva; font-size: 12pt;\">\u00a0 Phone: +39.02.2399.3693<\/span><span style=\"font-family: trebuchet ms,geneva; font-size: 12pt;\"><br \/><\/span><span style=\"font-family: trebuchet ms,geneva; font-size: 12pt;\">\u00a0 Email: <a href=\"mailto:lorenzo.luini@polimi.it\">lorenzo.luini@polimi.it<\/a><\/span><\/p>\n<p>&nbsp;<\/p>\n\n\n<style>\n  #ll-stats {\n    font-family: Arial, sans-serif;\n    max-width: 720px;\n    margin: 65px 0 0 0;\n  }\n  #ll-stats .grid {\n    display: grid;\n    grid-template-columns: repeat(3, 233px);\n    gap: 40px;\n    justify-content: start;\n  }\n  #ll-stats .card {\n    background: #f4f6fb;\n    border: 1px solid #dde4f0;\n    border-radius: 10px;\n    padding: 18px 16px;\n    text-align: center;\n    display: block;\n    transition: box-shadow 0.2s, transform 0.2s;\n    cursor: pointer;\n    color: inherit;\n    text-decoration: none;\n  }\n  #ll-stats .card:hover {\n    box-shadow: 0 4px 16px rgba(26,86,160,0.10);\n    transform: translateY(-2px);\n  }\n  #ll-stats .num {\n    font-size: 36px;\n    font-weight: 700;\n    color: #0d1b3e;\n    letter-spacing: -0.03em;\n    min-height: 44px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n  }\n  #ll-stats .num.loading {\n    font-size: 20px;\n    color: #aab;\n  }\n  #ll-stats .desc {\n    font-size: 12px;\n    color: #666;\n    margin-top: 6px;\n    text-transform: uppercase;\n    letter-spacing: .06em;\n  }\n  #ll-stats .sublabel {\n    font-size: 11px;\n    color: #aab;\n    margin-top: 3px;\n  }\n  #ll-stats .divider {\n    border: none;\n    border-top: 1px solid #dde4f0;\n    margin: 12px 0 10px;\n  }\n  #ll-stats .pill-btn {\n    display: inline-flex;\n    align-items: center;\n    gap: 5px;\n    background: #fff;\n    border: 1px solid #c5d6ef;\n    border-radius: 20px;\n    padding: 5px 12px;\n    font-size: 11px;\n    font-weight: 600;\n    color: #1a56a0;\n    white-space: nowrap;\n    cursor: pointer;\n  }\n  #ll-stats .card:hover .pill-btn {\n    background: #e8f0fb;\n    border-color: #1a56a0;\n  }\n<\/style>\n\n<div id=\"ll-stats\">\n  <div class=\"grid\">\n\n    <!-- PUBBLICAZIONI -->\n    <div class=\"card\" id=\"ll-card-pub\">\n      <div id=\"ll-num-pub\" class=\"num loading\">\u2026<\/div>\n      <div class=\"desc\">Scientific publications<\/div>\n      <div class=\"sublabel\">journals, books &amp; conference papers<\/div>\n      <hr class=\"divider\">\n      <div class=\"pill-btn\" id=\"ll-btn-scholar\">\n        <svg width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n          <path d=\"M12 24a7 7 0 1 1 0-14 7 7 0 0 1 0 14zm0-24L0 9.5h3.5v9H8v-6h8v6h4.5v-9H24L12 0z\" fill=\"#1a56a0\"\/>\n        <\/svg>\n        Google Scholar \u2197\n      <\/div>\n    <\/div>\n\n    <!-- PROGETTI -->\n    <div class=\"card\" id=\"ll-card-proj\">\n      <div id=\"ll-num-proj\" class=\"num loading\">\u2026<\/div>\n      <div class=\"desc\">Research projects<\/div>\n      <div class=\"sublabel\">ESA, USAFRL, Huawei &amp; more<\/div>\n      <hr class=\"divider\">\n      <div class=\"pill-btn\" id=\"ll-btn-esa\">\ud83d\udef0 ESA projects \u2197<\/div>\n    <\/div>\n\n    <!-- CORSI -->\n    <div class=\"card\" id=\"ll-card-teach\">\n      <div id=\"ll-num-teach\" class=\"num loading\">\u2026<\/div>\n      <div class=\"desc\">Courses taught<\/div>\n      <div class=\"sublabel\">at Politecnico di Milano<\/div>\n      <hr class=\"divider\">\n      <div class=\"pill-btn\" id=\"ll-btn-em\">\ud83d\udce1 EM wave propagation \u2197<\/div>\n    <\/div>\n\n  <\/div>\n<\/div>\n\n<script>\n(function() {\n\n  \/\/ -------------------------------------------------------\n  \/\/ Click handlers aggiunti via JS (WordPress rimuove gli onclick inline)\n  \/\/ -------------------------------------------------------\n  document.addEventListener('DOMContentLoaded', function() {\n\n    \/\/ Click sulle card \u2192 pagina principale\n    var cardPub   = document.getElementById('ll-card-pub');\n    var cardProj  = document.getElementById('ll-card-proj');\n    var cardTeach = document.getElementById('ll-card-teach');\n\n    if (cardPub)   cardPub.addEventListener('click',   function() { window.location = 'https:\/\/luini.deib.polimi.it\/?page_id=309'; });\n    if (cardProj)  cardProj.addEventListener('click',  function() { window.location = 'https:\/\/luini.deib.polimi.it\/?page_id=257'; });\n    if (cardTeach) cardTeach.addEventListener('click', function() { window.location = 'https:\/\/luini.deib.polimi.it\/?page_id=227'; });\n\n    \/\/ Click sui bottoni pill \u2192 pagina specifica (stopPropagation evita il click della card)\n    var btnScholar = document.getElementById('ll-btn-scholar');\n    var btnEsa     = document.getElementById('ll-btn-esa');\n    var btnEm      = document.getElementById('ll-btn-em');\n\n    if (btnScholar) btnScholar.addEventListener('click', function(e) {\n      e.stopPropagation();\n      window.open('https:\/\/scholar.google.com\/citations?user=i8mov-oAAAAJ&hl=en', '_blank');\n    });\n    if (btnEsa) btnEsa.addEventListener('click', function(e) {\n      e.stopPropagation();\n      window.location = 'https:\/\/luini.deib.polimi.it\/?page_id=154';\n    });\n    if (btnEm) btnEm.addEventListener('click', function(e) {\n      e.stopPropagation();\n      window.location = 'https:\/\/luini.deib.polimi.it\/?page_id=135';\n    });\n\n  });\n\n  \/\/ -------------------------------------------------------\n  \/\/ Fetch e conteggio\n  \/\/ -------------------------------------------------------\n  async function countListItems(url, selector) {\n    try {\n      const res = await fetch(url, { cache: 'no-store' });\n      const html = await res.text();\n      const parser = new DOMParser();\n      const doc = parser.parseFromString(html, 'text\/html');\n      const content = doc.querySelector('.entry-content, article, #content, main') || doc.body;\n      return content.querySelectorAll(selector).length;\n    } catch(e) {\n      return null;\n    }\n  }\n\n  function animateCount(el, target) {\n    el.classList.remove('loading');\n    const duration = 900;\n    const start = performance.now();\n    function step(now) {\n      const t = Math.min((now - start) \/ duration, 1);\n      const ease = 1 - Math.pow(1 - t, 3);\n      el.textContent = Math.round(ease * target);\n      if (t < 1) requestAnimationFrame(step);\n      else el.textContent = target;\n    }\n    requestAnimationFrame(step);\n  }\n\n  \/\/ --- PUBBLICAZIONI ---\n  const pubPages = [\n    'https:\/\/luini.deib.polimi.it\/?page_id=136',\n    'https:\/\/luini.deib.polimi.it\/?page_id=84',\n    'https:\/\/luini.deib.polimi.it\/?page_id=83',\n    'https:\/\/luini.deib.polimi.it\/?page_id=45',\n    'https:\/\/luini.deib.polimi.it\/?page_id=9',\n    'https:\/\/luini.deib.polimi.it\/?page_id=82',\n  ];\n\n  async function loadPublications() {\n    const numEl = document.getElementById('ll-num-pub');\n    const counts = await Promise.all(\n      pubPages.map(u => countListItems(u, '.entry-content ol li, .entry-content > ol > li'))\n    );\n    const total = counts.reduce((a, b) => a + (b || 0), 0);\n    if (total > 0) animateCount(numEl, total);\n    else { numEl.textContent = '\u2014'; numEl.classList.remove('loading'); }\n  }\n\n  \/\/ --- PROGETTI --- (rimossi trailing slash che causavano errori)\n  const projPages = [\n    'https:\/\/luini.deib.polimi.it\/?page_id=210',\n    'https:\/\/luini.deib.polimi.it\/?page_id=173',\n    'https:\/\/luini.deib.polimi.it\/?page_id=155',\n    'https:\/\/luini.deib.polimi.it\/?page_id=154',\n    'https:\/\/luini.deib.polimi.it\/?page_id=153',\n    'https:\/\/luini.deib.polimi.it\/?page_id=152',\n    'https:\/\/luini.deib.polimi.it\/?page_id=151',\n  ];\n\n  async function loadProjects() {\n    const numEl = document.getElementById('ll-num-proj');\n    const counts = await Promise.all(\n      projPages.map(u => countListItems(u, '.entry-content ul li, .entry-content ol li'))\n    );\n    const total = counts.reduce((a, b) => a + (b || 0), 0);\n    if (total > 0) animateCount(numEl, total);\n    else { numEl.textContent = '\u2014'; numEl.classList.remove('loading'); }\n  }\n\n  \/\/ --- CORSI --- (aggiornato a page_id)\n  async function loadTeaching() {\n    const numEl = document.getElementById('ll-num-teach');\n    const count = await countListItems(\n      'https:\/\/luini.deib.polimi.it\/?page_id=227',\n      '.entry-content ul li, .entry-content ol li'\n    );\n    const val = (count && count > 0) ? count : 3;\n    animateCount(numEl, val);\n  }\n\n  loadPublications();\n  loadProjects();\n  loadTeaching();\n\n})();\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>Associate Professor of Electromagnetic Fields \u00a0Politecnico di Milano\u00a0 DEIB \u2013 Dipartimento di Elettronica, Informazione e Bioingegneria\u00a0 Building 20, Via Ponzio [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":1,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-4","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/luini.deib.polimi.it\/index.php?rest_route=\/wp\/v2\/pages\/4","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/luini.deib.polimi.it\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/luini.deib.polimi.it\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/luini.deib.polimi.it\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/luini.deib.polimi.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4"}],"version-history":[{"count":72,"href":"https:\/\/luini.deib.polimi.it\/index.php?rest_route=\/wp\/v2\/pages\/4\/revisions"}],"predecessor-version":[{"id":881,"href":"https:\/\/luini.deib.polimi.it\/index.php?rest_route=\/wp\/v2\/pages\/4\/revisions\/881"}],"wp:attachment":[{"href":"https:\/\/luini.deib.polimi.it\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}