diff --git a/News.md b/News.md index 1fccdfe..9089d3f 100644 --- a/News.md +++ b/News.md @@ -1,5 +1,9 @@ ## 2025 +### March + +- Join us for a hybrid online+offline course: [High-Fidelity Simulations Using Basilisk C](/teaching/2025-Basilisk101-Madrid) in Madrid, Spain (March 10-13). Learn some computational (colorful) fluid dynamics with hands-on coding sessions. + ### February - [Sanjay, V., Zhang, B., Lv, C., & Lohse, D. J. Fluid Mech., 1004, A6 (2025) selected as the cover article.](/research#14) @@ -46,4 +50,4 @@ ### May -Vatsal Sanjay awarded the KIVI Hoogendoorn Fluid Mechanics Award 2023 for his PhD thesis "Viscous Free-Surface Flows". The award ceremony will take place at the Burgers Symposium on 29–30 May 2024 in Lunteren. \ No newline at end of file +Vatsal Sanjay awarded the KIVI Hoogendoorn Fluid Mechanics Award 2023 for his PhD thesis "Viscous Free-Surface Flows". The award ceremony took place at the Burgers Symposium on 29–30 May 2024 in Lunteren. \ No newline at end of file diff --git a/_layouts/research.html b/_layouts/research.html index 3c9aaba..75f2189 100644 --- a/_layouts/research.html +++ b/_layouts/research.html @@ -52,7 +52,7 @@ margin-bottom: 0.5em; } /* Tag styling */ - tags span { + tags span, tags a.tag-link { display: inline-block; padding: 2px 8px; margin: 2px; @@ -60,14 +60,31 @@ background-color: #f0f0f0; cursor: pointer; transition: background-color 0.2s ease; + text-decoration: none; + color: inherit; } - tags span:hover { + tags span:hover, tags a.tag-link:hover { background-color: #e0e0e0; } - tags span.active { + tags span.active, tags a.tag-link.active { background-color: #007bff; color: white; } + /* Style for filter notification */ + .filter-note { + margin: 1rem 0; + padding: 0.5rem 1rem; + background-color: rgba(0,123,255,0.1); + border-radius: 4px; + } + .filter-note a { + margin-left: 0.5rem; + color: #007bff; + text-decoration: none; + } + .filter-note a:hover { + text-decoration: underline; + } .paper-container.hidden { display: none; } @@ -564,7 +581,7 @@

Contents

}); }; - // Add click handlers to tags + // Restore click handlers for client-side filtering allTags.forEach(tag => { tag.addEventListener('click', () => { const tagText = tag.textContent; @@ -600,6 +617,18 @@

Contents

}); }); + // Handle filter note if present (for pre-built pages) + const filterNote = document.querySelector('.filter-note'); + if (filterNote) { + const clearFilterLink = filterNote.querySelector('a'); + if (clearFilterLink) { + clearFilterLink.addEventListener('click', (e) => { + e.preventDefault(); + window.location.href = '/research/'; + }); + } + } + // Apply filter from URL if present if (tagFromUrl) { const matchingTag = Array.from(allTags).find(tag => tag.textContent === tagFromUrl); diff --git a/assets/css/research.css b/assets/css/research.css index 1f7ab22..e4d8033 100644 --- a/assets/css/research.css +++ b/assets/css/research.css @@ -30,41 +30,66 @@ padding: 8rem 0 6rem 0; background-color: var(--research-bg-color); position: relative; + transition: background-color 0.1s linear; + box-shadow: none; } -/* Improve bold text visibility in dark mode */ +/* Improve bold text visibility across all modes */ +.research-content strong, +.research-content b { + font-weight: 700; + transition: none; +} + +/* Dark mode color changes only */ [data-theme="dark"] .research-content strong, [data-theme="dark"] .research-content b { color: #ffffff; - font-weight: 700; text-shadow: 0 0 1px rgba(255, 255, 255, 0.3); } -/* Add more solid background in dark mode */ +/* Add more solid background in dark mode - color only */ [data-theme="dark"] .s-research { background-color: #1E1E25; box-shadow: inset 0 0 100px rgba(0, 0, 0, 0.3); } -/* Improve blockquote visibility in dark mode */ -[data-theme="dark"] .research-content blockquote { - background-color: #272736; - border-left: 4px solid #4d8dff; +/* Blockquote styling consistent across themes */ +.research-content blockquote { + background-color: var(--research-paper-bg); + border-left: 4px solid var(--research-subheading-color); padding: 1rem; margin: 1.5rem 0; - color: #ffffff; + color: var(--research-text-color); border-radius: 0 4px 4px 0; + transition: background-color 0.15s linear; } -/* Improve list item visibility in dark mode */ -[data-theme="dark"] .research-content ul, -[data-theme="dark"] .research-content ol { +/* Dark mode color changes only */ +[data-theme="dark"] .research-content blockquote { + background-color: #272736; + border-left-color: #4d8dff; color: #ffffff; } +/* List item styling consistent across themes */ +.research-content ul, +.research-content ol { + color: var(--research-text-color); + transition: none; +} + +.research-content li { + color: var(--research-text-color); + margin-bottom: 0.5rem; + transition: none; +} + +/* Dark mode color changes only */ +[data-theme="dark"] .research-content ul, +[data-theme="dark"] .research-content ol, [data-theme="dark"] .research-content li { color: #ffffff; - margin-bottom: 0.5rem; } @media screen and (max-width: 800px) { @@ -86,12 +111,17 @@ } /* Improve content visibility in dark mode */ -[data-theme="dark"] .research-content { - background-color: #272736; +.research-content { border-radius: 8px; padding: 2rem; - box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); - border: 1px solid rgba(80, 80, 120, 0.2); + box-shadow: 0 4px 20px var(--research-shadow); + border: 1px solid transparent; + transition: background-color 0.15s linear; +} + +[data-theme="dark"] .research-content { + background-color: #272736; + border-color: rgba(80, 80, 120, 0.2); } @media screen and (max-width: 600px) { @@ -108,8 +138,10 @@ text-align: center; background: linear-gradient(45deg, #0085ff, var(--research-heading-color)); -webkit-background-clip: text; + background-clip: text; /* Standard property for compatibility */ -webkit-text-fill-color: transparent; animation: fadeIn 0.8s ease-out; + transition: none; } @media screen and (max-width: 600px) { @@ -164,12 +196,15 @@ padding: 1.5rem; margin: 2rem 0; border-radius: 8px; - transition: all 0.3s ease; + transition: transform 0.2s ease; + /* Only keep transform transition for hover effect, remove theme-switching transitions */ border: 1px solid transparent; background-color: transparent; scroll-margin-top: 120px; position: relative; color: var(--research-text-color); + /* Add consistent box-shadow with 0 opacity by default */ + box-shadow: 0 4px 12px rgba(0, 0, 0, 0); } .paper-container:hover { @@ -179,6 +214,12 @@ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); } +[data-theme="dark"] .paper-container:hover { + background-color: rgba(70, 140, 255, 0.1); + border-color: rgba(70, 140, 255, 0.2); + /* keep transform and box-shadow the same to avoid layout shifts */ +} + .paper-container h3 { margin-top: 0; } diff --git a/assets/css/styles.css b/assets/css/styles.css index 1439b73..9365a0b 100644 --- a/assets/css/styles.css +++ b/assets/css/styles.css @@ -127,6 +127,32 @@ body { background-color: var(--color-background) !important; } +/* Ensure content is contained within viewport on all screens */ +.s-about, +.s-about__grid, +.s-about__left, +.s-about__desc, +.s-about__right, +.s-about__desc p, +.s-about__desc li, +.s-about__desc a, +.s-about__desc h1, +.s-about__desc h2, +.s-about__desc h3, +.s-about__desc strong, +.s-about__desc ul, +.s-research, +.s-research p, +.s-featured, +.s-featured p, +.s-teaching, +.s-teaching p { + max-width: 100%; + box-sizing: border-box; + overflow-wrap: break-word; + word-wrap: break-word; +} + /* Match About and News container styles in dark mode */ [data-theme="dark"] .s-about__grid { background: linear-gradient(145deg, rgba(35, 35, 45, 0.7), rgba(30, 30, 38, 0.8)) !important; @@ -198,10 +224,14 @@ h2::after { /* YouTube stats card theme switching */ .youtube-stats-light { display: block; + max-width: 100%; + height: auto; } .youtube-stats-dark { display: none; + max-width: 100%; + height: auto; } [data-theme="dark"] .youtube-stats-light { @@ -212,6 +242,23 @@ h2::after { display: block; } +/* Make YouTube stats card responsive */ +img.youtube-stats-light, +img.youtube-stats-dark { + max-width: 100%; + height: auto; + box-sizing: border-box; +} + +@media screen and (max-width: 768px) { + img.youtube-stats-light, + img.youtube-stats-dark { + max-width: 100%; + height: auto !important; + width: 100% !important; + } +} + /* Fix box shadows and borders in dark mode */ [data-theme="dark"] .featured-paper, [data-theme="dark"] .s-about__grid { @@ -494,7 +541,7 @@ h2::after { background-image: url('../../featured/GraphicalAbstract_v7_FrontOnly.jpg'); background-size: cover; background-position: center; - opacity: 0.65; + opacity: 0.75; z-index: -1; filter: brightness(0.9) contrast(1.1); backdrop-filter: blur(5px); @@ -891,6 +938,12 @@ h2::after { line-height: 1.8; max-width: 800px; margin: 0 auto; + overflow-wrap: break-word; + word-wrap: break-word; + word-break: break-word; + hyphens: auto; + width: 100%; + box-sizing: border-box; } .s-about__desc h1 { @@ -926,6 +979,9 @@ h2::after { .s-about__desc p { margin-bottom: 1.5rem; + max-width: 100%; + overflow-wrap: break-word; + word-wrap: break-word; } .s-about__desc ul { @@ -1059,6 +1115,12 @@ h2::after { } @media screen and (max-width: 768px) { + /* General mobile responsiveness improvements */ + body { + overflow-x: hidden; + width: 100%; + } + .s-header__menu-toggle { display: flex; z-index: 90; @@ -1079,6 +1141,11 @@ h2::after { box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1); z-index: 100; } + + [data-theme="dark"] .s-header__nav { + background: rgba(30, 30, 35, 0.95); + box-shadow: -2px 0 10px rgba(0, 0, 0, 0.3); + } .s-header__nav.is-active { right: 0; @@ -1126,6 +1193,10 @@ h2::after { .s-header__nav-list a:hover { background: rgba(255, 255, 255, 0.35); } + + [data-theme="dark"] .s-header__nav-list a:hover { + background: rgba(60, 60, 70, 0.5); + } /* Special handling for Bluesky icon in mobile view */ .s-header__nav-list li[style="background: none;"] { @@ -1154,10 +1225,16 @@ h2::after { .s-about__grid { grid-template-columns: 1fr; gap: 4rem; + width: 100%; + box-sizing: border-box; + overflow-x: hidden; + padding: 0 1rem; } .s-about__left { padding-right: 0; + width: 100%; + overflow-x: hidden; } .s-about__right { @@ -1297,6 +1374,8 @@ h2::after { .team-grid { grid-template-columns: 1fr; } + + .team-member { width: 100%; @@ -1797,6 +1876,8 @@ h2::after { .team-grid { grid-template-columns: 1fr; } + + .team-member { width: 100%; diff --git a/assets/favicon/site.webmanifest b/assets/favicon/site.webmanifest index e2f99dc..1f6b71c 100644 --- a/assets/favicon/site.webmanifest +++ b/assets/favicon/site.webmanifest @@ -3,14 +3,19 @@ "short_name": "CoMPhy", "icons": [ { - "src": "/assets/favicon/android-chrome-192x192.png", - "sizes": "192x192", + "src": "/assets/favicon/favicon-96x96.png", + "sizes": "96x96", "type": "image/png" }, { - "src": "/assets/favicon/android-chrome-512x512.png", - "sizes": "512x512", - "type": "image/png" + "src": "/assets/favicon/favicon.svg", + "sizes": "any", + "type": "image/svg+xml" + }, + { + "src": "/assets/favicon/favicon.ico", + "sizes": "48x48", + "type": "image/x-icon" } ], "theme_color": "#ffffff", diff --git a/assets/js/search_db.json b/assets/js/search_db.json index 9255aeb..a09c167 100644 --- a/assets/js/search_db.json +++ b/assets/js/search_db.json @@ -307,6 +307,118 @@ "type": "team_member", "priority": 1 }, + { + "title": "Build and Development Commands", + "content": "- **Install dependencies:** `bundle install && cd scripts && npm install && cd ..`\n- **Build site and search database:** `./scripts/build.sh`\n- **Run local server:** `bundle exec jekyll serve` (don't run this automatically, user will do manually)\n- **Fetch blog content:** `cd scripts && npm run fetch-github && cd ..`\n- **Generate search database:** `ruby scripts/generate_search_db.rb`", + "url": "/#about", + "type": "markdown_section", + "priority": 3 + }, + { + "title": "Build and Development Commands", + "content": "- **Install dependencies:** `bundle install && cd scripts && npm install && cd ..`\n- **Build site and search database:** `./scripts/build.sh`\n- **Run local server:** `bundle exec jekyll serve` (don't run this automatically, user will do manually)\n- **Fetch blog content:** `cd scripts && npm run fetch-github && cd ..`\n- **Generate search database:** `ruby scripts/generate_search_db.rb`", + "url": "/#about", + "type": "markdown_text", + "priority": 3 + }, + { + "title": "Repository Guidelines", + "content": "- Refer to README.md to understand the codebase structure and organization\n- After adding or deleting files, update README.md accordingly\n- Keep README.md up-to-date whenever changes affect what's documented there\n- Templates are in _layouts/*.html with corresponding CSS files:\n - default.html uses styles.css in /assets/css\n - research.html uses research.css\n - team.html uses team.css\n - All layouts use styles.css as base styling", + "url": "/#about", + "type": "markdown_section", + "priority": 3 + }, + { + "title": "Repository Guidelines", + "content": "- Refer to README.md to understand the codebase structure and organization\n- After adding or deleting files, update README.md accordingly\n- Keep README.md up-to-date whenever changes affect what's documented there\n- Templates are in _layouts/*.html with corresponding CSS files:\n - default.html uses styles.css in /assets/css\n - research.html uses research.css\n - team.html uses team.css\n - All layouts use styles.css as base styling", + "url": "/#about", + "type": "markdown_text", + "priority": 3 + }, + { + "title": "General", + "content": "- Use 2-space indentation across all files\n- Follow DRY principles: reuse components, variables, and styles\n- Add comments for complex logic, but keep code self-documenting\n- Support both light and dark themes for all new features and changes\n - Test all UI changes in both themes before committing\n - Use CSS variables for theme-specific colors (defined in styles.css)", + "url": "/#about", + "type": "markdown_section", + "priority": 3 + }, + { + "title": "General", + "content": "- Use 2-space indentation across all files\n- Follow DRY principles: reuse components, variables, and styles\n- Add comments for complex logic, but keep code self-documenting\n- Support both light and dark themes for all new features and changes\n - Test all UI changes in both themes before committing\n - Use CSS variables for theme-specific colors (defined in styles.css)", + "url": "/#about", + "type": "markdown_text", + "priority": 3 + }, + { + "title": "HTML/Markdown", + "content": "- Use semantic HTML elements\n- Follow BEM naming convention for CSS classes (e.g., `s-header__nav-list`)\n- Keep content files in markdown format where possible", + "url": "/#about", + "type": "markdown_section", + "priority": 3 + }, + { + "title": "HTML/Markdown", + "content": "- Use semantic HTML elements\n- Follow BEM naming convention for CSS classes (e.g., `s-header__nav-list`)\n- Keep content files in markdown format where possible", + "url": "/#about", + "type": "markdown_text", + "priority": 3 + }, + { + "title": "CSS", + "content": "- Use CSS variables for colors and typography (defined in `:root`)\n- Use responsive breakpoints at 1700px, 1300px, 900px, 768px, 500px\n- Use `rem` units for font sizes and spacing\n- Follow mobile-first approach for media queries\n- Implement dark theme styles using the [data-theme=\"dark\"] selector\n- Theme colors are defined in styles.css and page-specific CSS files", + "url": "/#about", + "type": "markdown_section", + "priority": 3 + }, + { + "title": "CSS", + "content": "- Use CSS variables for colors and typography (defined in `:root`)\n- Use responsive breakpoints at 1700px, 1300px, 900px, 768px, 500px\n- Use `rem` units for font sizes and spacing\n- Follow mobile-first approach for media queries\n- Implement dark theme styles using the [data-theme=\"dark\"] selector\n- Theme colors are defined in styles.css and page-specific CSS files", + "url": "/#about", + "type": "markdown_text", + "priority": 3 + }, + { + "title": "JavaScript", + "content": "- Use ES6+ features (arrow functions, const/let, template literals)\n- Always include 'use strict' mode\n- Use async/await for asynchronous operations\n- Implement error handling with try/catch blocks\n- Use camelCase for variable and function names\n- Prefer event delegation for multiple similar elements", + "url": "/#about", + "type": "markdown_section", + "priority": 3 + }, + { + "title": "JavaScript", + "content": "- Use ES6+ features (arrow functions, const/let, template literals)\n- Always include 'use strict' mode\n- Use async/await for asynchronous operations\n- Implement error handling with try/catch blocks\n- Use camelCase for variable and function names\n- Prefer event delegation for multiple similar elements", + "url": "/#about", + "type": "markdown_text", + "priority": 3 + }, + { + "title": "Images", + "content": "- Optimize images for web (compress to reduce file size)\n- Follow naming convention: `[name]-[descriptor].[extension]`\n- Include alt text for all images", + "url": "/#about", + "type": "markdown_section", + "priority": 3 + }, + { + "title": "Images", + "content": "- Optimize images for web (compress to reduce file size)\n- Follow naming convention: `[name]-[descriptor].[extension]`\n- Include alt text for all images", + "url": "/#about", + "type": "markdown_text", + "priority": 3 + }, + { + "title": "March", + "content": "- Join us for a hybrid online+offline course: [High-Fidelity Simulations Using Basilisk C](/teaching/2025-Basilisk101-Madrid) in Madrid, Spain (March 10-13). Learn some computational (colorful) fluid dynamics with hands-on coding sessions.", + "url": "/#about", + "type": "markdown_section", + "priority": 3 + }, + { + "title": "March", + "content": "- Join us for a hybrid online+offline course: [High-Fidelity Simulations Using Basilisk C](/teaching/2025-Basilisk101-Madrid) in Madrid, Spain (March 10-13). Learn some computational (colorful) fluid dynamics with hands-on coding sessions.", + "url": "/#about", + "type": "markdown_text", + "priority": 3 + }, { "title": "February", "content": "- [Sanjay, V., Zhang, B., Lv, C., & Lohse, D. J. Fluid Mech., 1004, A6 (2025) selected as the cover article.](/research#14)\n\n
\n \n \"JFM\n \n
\n Download Cover\n View Paper\n
\n
\n\n- Milan Sent \n \n graduated with a bachelor's degree from University of Twente. Thesis: \n \n Spinning Pizza\n ", @@ -351,7 +463,7 @@ }, { "title": "May", - "content": "Vatsal Sanjay awarded the KIVI Hoogendoorn Fluid Mechanics Award 2023 for his PhD thesis \"Viscous Free-Surface Flows\". The award ceremony will take place at the Burgers Symposium on 29–30 May 2024 in Lunteren.", + "content": "Vatsal Sanjay awarded the KIVI Hoogendoorn Fluid Mechanics Award 2023 for his PhD thesis \"Viscous Free-Surface Flows\". The award ceremony took place at the Burgers Symposium on 29–30 May 2024 in Lunteren.", "url": "/#about", "type": "markdown_section", "priority": 3 @@ -685,6 +797,1963 @@ "type": "teaching_paragraph", "priority": 2 }, + { + "title": "404! But, there are no dragons either.", + "content": "Seems like you didn't find what you wanted. But don't worry - we've got plenty of exciting projects \n waiting for you to explore!\n Check Out:", + "url": "/404.html#404%2BBut%2Bthere%2Bare%2Bno%2Bdragons%2Beither", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "404! But, there are no dragons either.", + "content": "Take Me Home", + "url": "/404.html#404%2BBut%2Bthere%2Bare%2Bno%2Bdragons%2Beither", + "type": "text", + "links": [ + "" + ], + "priority": 3 + }, + { + "title": "404! But, there are no dragons either.", + "content": "© Copyright\n CoMPhy Lab 2025", + "url": "/404.html#404%2BBut%2Bthere%2Bare%2Bno%2Bdragons%2Beither", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "About", + "content": "If you are not redirected automatically, please click here.", + "url": "/about.html#About", + "type": "text", + "links": [ + "#about" + ], + "priority": 3 + }, + { + "title": "Contact", + "content": "Redirecting to Join Us page...", + "url": "/contact/index.html#Contact", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Contact", + "content": "If you are not redirected automatically, click here.", + "url": "/contact/index.html#Contact", + "type": "text", + "links": [ + "join" + ], + "priority": 3 + }, + { + "title": "Contact", + "content": "© Copyright\n CoMPhy Lab 2025", + "url": "/contact/index.html#Contact", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Contact", + "content": "Redirecting to Join Us page... If you are not redirected automatically, click here.", + "url": "/contact/index.html#Contact", + "type": "section", + "links": [ + "join" + ], + "priority": 3 + }, + { + "title": "Computational Multiphase \n Physics (CoMPhy) Lab", + "content": "Picture: Worthington jet formed due to bursting bubble.", + "url": "/index.html#Computational%2BMultiphase%2BPhysics%2BCoMPhy%2BLab", + "type": "text", + "links": [ + "research/#7" + ], + "priority": 3 + }, + { + "title": "Computational Multiphase \n Physics (CoMPhy) Lab", + "content": "Featured Research", + "url": "/index.html#Computational%2BMultiphase%2BPhysics%2BCoMPhy%2BLab", + "type": "text", + "links": [ + "#featured" + ], + "priority": 3 + }, + { + "title": "Featured Research", + "content": "© Copyright\n CoMPhy Lab 2025", + "url": "/index.html#Featured%2BResearch", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "PhD Positions", + "content": "We are always looking for enthusiastic PhD students interested in:", + "url": "/join/index.html#PhD%2BPositions", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "PhD Positions", + "content": "If you are interested, please send your:", + "url": "/join/index.html#PhD%2BPositions", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "PhD Positions", + "content": "to:", + "url": "/join/index.html#PhD%2BPositions", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Master's Projects", + "content": "We have several ongoing projects suitable for master's students. Current opportunities are listed at the project page.", + "url": "/join/index.html#Master%27s%2BProjects", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Master's Projects", + "content": "Contact us to discuss these or other potential projects.", + "url": "/join/index.html#Master%27s%2BProjects", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Master's Projects", + "content": "© Copyright\n CoMPhy Lab 2025", + "url": "/join/index.html#Master%27s%2BProjects", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "PhD Positions", + "content": "We are always looking for enthusiastic PhD students interested in: High-performance Computing\n Multiphase flows\n Physics-based modeling\n Soft singularities", + "url": "/join/index.html#PhD%2BPositions", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Master's Projects", + "content": "We have several ongoing projects suitable for master's students. Current opportunities are listed at the project page. Contact us to discuss these or other potential projects.", + "url": "/join/index.html#Master%27s%2BProjects", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Demirkır, Ç., Yang, R., Bashkatov, A., Sanjay, V., Lohse, D., & Krug, D. To jump or not to jump: Adhesion and viscous dissipation dictate the detachment of coalescing wall-attached bubbles. Submitted to Phys. Rev. Lett. (2025).", + "content": "", + "url": "/research/index.html#Demirkr%2BYang%2BR%2BBashkatov%2BA%2BSanjay%2BV%2BLohse%2BD%2BKrug%2BD%2BTo%2Bjump%2Bor%2Bnot%2Bto%2Bjump%3A%2BAdhesion%2Band%2Bviscous%2Bdissipation%2Bdictate%2Bthe%2Bdetachment%2Bof%2Bcoalescing%2Bwall-attached%2Bbubbles%2BSubmitted%2Bto%2BPhys%2BRev%2BLett%2B2025", + "type": "paper", + "tags": [ + "Bubbles", + "Coalescence" + ], + "priority": 3 + }, + { + "title": "Dixit, A. K., Oratis, A., Zinelis, K., Lohse, D., & Sanjay, V. Viscoelastic Worthington jets & droplets produced by bursting bubbles. Received positive reviews in J. Fluid Mech. (2025).", + "content": "", + "url": "/research/index.html#Dixit%2BA%2BK%2BOratis%2BA%2BZinelis%2BK%2BLohse%2BD%2BSanjay%2BV%2BViscoelastic%2BWorthington%2Bjets%2Bdroplets%2Bproduced%2Bby%2Bbursting%2Bbubbles%2BReceived%2Bpositive%2Breviews%2Bin%2BJ%2BFluid%2BMech%2B2025", + "type": "paper", + "tags": [ + "Bubbles", + "Non-Newtonian", + "Jets", + "Soft-matter-singularities", + "Drops" + ], + "priority": 3 + }, + { + "title": "Sanjay, V., & Lohse, D. Unifying theory of scaling in drop impact: Forces & maximum spreading diameter. Received positive reviews in Phys. Rev. Lett. (2025).", + "content": "", + "url": "/research/index.html#Sanjay%2BV%2BLohse%2BD%2BUnifying%2Btheory%2Bof%2Bscaling%2Bin%2Bdrop%2Bimpact%3A%2BForces%2Bmaximum%2Bspreading%2Bdiameter%2BReceived%2Bpositive%2Breviews%2Bin%2BPhys%2BRev%2BLett%2B2025", + "type": "paper", + "tags": [ + "Drops", + "Dissipative anamoly", + "Superamphiphobic-surfaces", + "Impact forces" + ], + "priority": 3 + }, + { + "title": "Bashkatov, A., Bürkle, F., Demirkır, Ç., Ding, W., Sanjay, V., Babich, A., Yang, X., Mutschke, G., Czarske, J., Lohse, D., et al. Electrolyte spraying within H₂ bubbles during water electrolysis. Received positive reviews in Nat. Commun. (2025).", + "content": "", + "url": "/research/index.html#Bashkatov%2BA%2BBrkle%2BF%2BDemirkr%2BDing%2BW%2BSanjay%2BV%2BBabich%2BA%2BYang%2BX%2BMutschke%2BG%2BCzarske%2BJ%2BLohse%2BD%2Bet%2Bal%2BElectrolyte%2Bspraying%2Bwithin%2BH%2Bbubbles%2Bduring%2Bwater%2Belectrolysis%2BReceived%2Bpositive%2Breviews%2Bin%2BNat%2BCommun%2B2025", + "type": "paper", + "tags": [ + "Bubbles", + "Jets", + "Coalescence", + "Soft-matter-singularities", + "Drops" + ], + "priority": 3 + }, + { + "title": "[14] Sanjay, V., Zhang, B., Lv, C., & Lohse, D. The role of viscosity on drop impact forces on non-wetting surfaces. J. Fluid Mech., 1004, A6 (2025).", + "content": "", + "url": "/research/index.html#14%2BSanjay%2BV%2BZhang%2BB%2BLv%2BC%2BLohse%2BD%2BThe%2Brole%2Bof%2Bviscosity%2Bon%2Bdrop%2Bimpact%2Bforces%2Bon%2Bnon-wetting%2Bsurfaces%2BJ%2BFluid%2BMech%2B1004%2BA6%2B2025", + "type": "paper", + "tags": [ + "Drops", + "Impact forces", + "Featured" + ], + "priority": 3 + }, + { + "title": "[13] Kayal, L., Sanjay, V., Yewale, N., Kumar, A., & Dasgupta, R. Focusing of concentric free-surface waves. J. Fluid Mech., 1003, A14 (2025).", + "content": "", + "url": "/research/index.html#13%2BKayal%2BL%2BSanjay%2BV%2BYewale%2BN%2BKumar%2BA%2BDasgupta%2BR%2BFocusing%2Bof%2Bconcentric%2Bfree-surface%2Bwaves%2BJ%2BFluid%2BMech%2B1003%2BA14%2B2025", + "type": "paper", + "tags": [ + "Waves", + "Dissipative anamoly" + ], + "priority": 3 + }, + { + "title": "[12] Balasubramanian, A. G., Sanjay, V., Jalaal, M., Vinuesa, R., & Tammisola, O. Bursting bubble in an elastoviscoplastic medium. J. Fluid Mech., 1001, A9 (2024).", + "content": "", + "url": "/research/index.html#12%2BBalasubramanian%2BA%2BG%2BSanjay%2BV%2BJalaal%2BM%2BVinuesa%2BR%2BTammisola%2BO%2BBursting%2Bbubble%2Bin%2Ban%2Belastoviscoplastic%2Bmedium%2BJ%2BFluid%2BMech%2B1001%2BA9%2B2024", + "type": "paper", + "tags": [ + "Bubbles", + "Non-Newtonian", + "Jets", + "Soft-matter-singularities", + "Featured" + ], + "priority": 3 + }, + { + "title": "[11] Sanjay, V., Chantelot, P., & Lohse, D. When does an impacting drop stop bouncing? J. Fluid Mech., 958, A26 (2023).", + "content": "", + "url": "/research/index.html#11%2BSanjay%2BV%2BChantelot%2BP%2BLohse%2BD%2BWhen%2Bdoes%2Ban%2Bimpacting%2Bdrop%2Bstop%2Bbouncing%2BJ%2BFluid%2BMech%2B958%2BA26%2B2023", + "type": "paper", + "tags": [ + "Drops", + "Bouncing", + "Dissipative anamoly" + ], + "priority": 3 + }, + { + "title": "[10] Sanjay, V., Lakshman, S., Chantelot, P., Snoeijer, J. H., & Lohse, D. Drop impact on viscous liquid films. J. Fluid Mech., 958, A25 (2023).", + "content": "", + "url": "/research/index.html#10%2BSanjay%2BV%2BLakshman%2BS%2BChantelot%2BP%2BSnoeijer%2BJ%2BH%2BLohse%2BD%2BDrop%2Bimpact%2Bon%2Bviscous%2Bliquid%2Bfilms%2BJ%2BFluid%2BMech%2B958%2BA25%2B2023", + "type": "paper", + "tags": [ + "Drops", + "Bouncing", + "Superhydrophobic surfaces" + ], + "priority": 3 + }, + { + "title": "➡️ Sanjay, V. Viscous free-surface flows. Ph.D. Thesis, Physics of Fluids, University of Twente (2022).", + "content": "", + "url": "/research/index.html#%2BSanjay%2BV%2BViscous%2Bfree-surface%2Bflows%2BPhD%2BThesis%2BPhysics%2Bof%2BFluids%2BUniversity%2Bof%2BTwente%2B2022", + "type": "paper", + "tags": [ + "Drops", + "Jets", + "Sheets", + "Bubbles", + "Soft-matter-singularities", + "Non-Newtonian" + ], + "priority": 3 + }, + { + "title": "[9] Sanjay, V. Taylor--Culick retractions and the influence of the surroundings. J. Fluid Mech., 948, A14 (2022).", + "content": "", + "url": "/research/index.html#9%2BSanjay%2BV%2BTaylor--Culick%2Bretractions%2Band%2Bthe%2Binfluence%2Bof%2Bthe%2Bsurroundings%2BJ%2BFluid%2BMech%2B948%2BA14%2B2022", + "type": "paper", + "tags": [ + "Sheets", + "Dissipative anamoly", + "Retraction" + ], + "priority": 3 + }, + { + "title": "[8] Zhang, B., Sanjay, V., Shi, S., and Zhao, Y., and Lv, C., and Feng, X.-Q., & Lohse, D. Impact forces of water drops falling on superhydrophobic surfaces. Phys. Rev. Lett., 129(10), 104501 (2022).", + "content": "", + "url": "/research/index.html#8%2BZhang%2BB%2BSanjay%2BV%2BShi%2BS%2Band%2BZhao%2BY%2Band%2BLv%2BC%2Band%2BFeng%2BX-Q%2BLohse%2BD%2BImpact%2Bforces%2Bof%2Bwater%2Bdrops%2Bfalling%2Bon%2Bsuperhydrophobic%2Bsurfaces%2BPhys%2BRev%2BLett%2B12910%2B104501%2B2022", + "type": "paper", + "tags": [ + "Drops", + "Superhydrophobic surfaces", + "Impact forces" + ], + "priority": 3 + }, + { + "title": "[7] Sanjay, V., Lohse, D., & Jalaal, M. Bursting bubble in a viscoplastic medium. J. Fluid Mech., 922, A2 (2021).", + "content": "", + "url": "/research/index.html#7%2BSanjay%2BV%2BLohse%2BD%2BJalaal%2BM%2BBursting%2Bbubble%2Bin%2Ba%2Bviscoplastic%2Bmedium%2BJ%2BFluid%2BMech%2B922%2BA2%2B2021", + "type": "paper", + "tags": [ + "Bubbles", + "Jets", + "Non-Newtonian", + "Soft-matter-singularities" + ], + "priority": 3 + }, + { + "title": "[6] Ramírez-Soto, O., Sanjay, V., Lohse, D., Pham, J. T., & Vollmer, D. Lifting a sessile oil drop from a superamphiphobic surface with an impacting one. Sci. Adv., 6(34), eaba4330 (2020).", + "content": "", + "url": "/research/index.html#6%2BRamrez-Soto%2BO%2BSanjay%2BV%2BLohse%2BD%2BPham%2BJ%2BT%2BVollmer%2BD%2BLifting%2Ba%2Bsessile%2Boil%2Bdrop%2Bfrom%2Ba%2Bsuperamphiphobic%2Bsurface%2Bwith%2Ban%2Bimpacting%2Bone%2BSci%2BAdv%2B634%2Beaba4330%2B2020", + "type": "paper", + "tags": [ + "Drops", + "Superamphiphobic-surfaces", + "Lifting" + ], + "priority": 3 + }, + { + "title": "[5] Jain, A., Sanjay, V., & Das, A. K. Consequences of inclined and dual jet impingement in stagnant liquid and stratified layers. AIChE J., 65(1), 372-384 (2019).", + "content": "", + "url": "/research/index.html#5%2BJain%2BA%2BSanjay%2BV%2BDas%2BA%2BK%2BConsequences%2Bof%2Binclined%2Band%2Bdual%2Bjet%2Bimpingement%2Bin%2Bstagnant%2Bliquid%2Band%2Bstratified%2Blayers%2BAIChE%2BJ%2B651%2B372-384%2B2019", + "type": "paper", + "tags": [ + "Jets", + "Bubbles" + ], + "priority": 3 + }, + { + "title": "[4] Soni, A., Sanjay, V., & Das, A. K. Formation of fluid structures due to jet-jet and jet-sheet interactions. Chem. Eng. Sci., 191, 67-77 (2018).", + "content": "", + "url": "/research/index.html#4%2BSoni%2BA%2BSanjay%2BV%2BDas%2BA%2BK%2BFormation%2Bof%2Bfluid%2Bstructures%2Bdue%2Bto%2Bjet-jet%2Band%2Bjet-sheet%2Binteractions%2BChem%2BEng%2BSci%2B191%2B67-77%2B2018", + "type": "paper", + "tags": [ + "Jets" + ], + "priority": 3 + }, + { + "title": "[3] Sanjay, V., Das, A.K. Numerical assessment of hazard in compartmental fire having steady heat release rate from the source. Build. Simul. 11, 613–624 (2018).", + "content": "", + "url": "/research/index.html#3%2BSanjay%2BV%2BDas%2BAK%2BNumerical%2Bassessment%2Bof%2Bhazard%2Bin%2Bcompartmental%2Bfire%2Bhaving%2Bsteady%2Bheat%2Brelease%2Brate%2Bfrom%2Bthe%2Bsource%2BBuild%2BSimul%2B11%2B613624%2B2018", + "type": "paper", + "tags": [ + "Others", + "Fire", + "Evacuation" + ], + "priority": 3 + }, + { + "title": "[2] Sanjay, V., & Das, A. K. Formation of liquid chain by collision of two laminar jets. Phys. Fluids, 29(11), 112101 (2017).", + "content": "", + "url": "/research/index.html#2%2BSanjay%2BV%2BDas%2BA%2BK%2BFormation%2Bof%2Bliquid%2Bchain%2Bby%2Bcollision%2Bof%2Btwo%2Blaminar%2Bjets%2BPhys%2BFluids%2B2911%2B112101%2B2017", + "type": "paper", + "tags": [ + "Jets", + "Sheets" + ], + "priority": 3 + }, + { + "title": "[1] Sanjay, V., & Das, A. K. On air entrainment in a water pool by impingement of a jet. AIChE J., 63(11), 5169-5181 (2017).", + "content": "", + "url": "/research/index.html#1%2BSanjay%2BV%2BDas%2BA%2BK%2BOn%2Bair%2Bentrainment%2Bin%2Ba%2Bwater%2Bpool%2Bby%2Bimpingement%2Bof%2Ba%2Bjet%2BAIChE%2BJ%2B6311%2B5169-5181%2B2017", + "type": "paper", + "tags": [ + "Jets", + "Bubbles" + ], + "priority": 3 + }, + { + "title": "Sort by topic", + "content": "Click on any tag to filter papers by topic. Each paper can have multiple tags.", + "url": "/research/index.html#Sort%2Bby%2Btopic", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "[1] Sanjay, V., & Das, A. K. On air entrainment in a water pool by impingement of a jet. AIChE J., 63(11), 5169-5181 (2017).", + "content": "© Copyright\n CoMPhy Lab 2025", + "url": "/research/index.html#1%2BSanjay%2BV%2BDas%2BA%2BK%2BOn%2Bair%2Bentrainment%2Bin%2Ba%2Bwater%2Bpool%2Bby%2Bimpingement%2Bof%2Ba%2Bjet%2BAIChE%2BJ%2B6311%2B5169-5181%2B2017", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Research", + "content": "Cover of that volume of J. Fluid Mech. Cover of that volume of J. Fluid Mech. As of March/April 2024, this highly cited paper received enough citations to place it in the top 1% of the academic field of Physics based on a highly cited threshold for the field and publication year. Source: Web of Science.\n Editor’s Suggestion of that issue of Phys. Rev. Lett.\n Research Highlight: Castelvecchi, D. The physics of a bouncing droplet’s impact. Nature, 609, 225 (2022).", + "url": "/research/index.html#Research", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "2025", + "content": "Cover of that volume of J. Fluid Mech.", + "url": "/research/index.html#2025", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "2024", + "content": "Cover of that volume of J. Fluid Mech.", + "url": "/research/index.html#2024", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "2022", + "content": "As of March/April 2024, this highly cited paper received enough citations to place it in the top 1% of the academic field of Physics based on a highly cited threshold for the field and publication year. Source: Web of Science.\n Editor’s Suggestion of that issue of Phys. Rev. Lett.\n Research Highlight: Castelvecchi, D. The physics of a bouncing droplet’s impact. Nature, 609, 225 (2022).", + "url": "/research/index.html#2022", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Dates", + "content": "March 10-13, 2025", + "url": "/teaching/2025-Basilisk101-Madrid.html", + "type": "teaching_detail", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Location", + "content": "Universidad Carlos III de Madrid, Spain", + "url": "/teaching/2025-Basilisk101-Madrid.html", + "type": "teaching_detail", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Duration", + "content": "4 days, full-time", + "url": "/teaching/2025-Basilisk101-Madrid.html", + "type": "teaching_detail", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Monday: Foundations", + "content": "Think before you compute 10:00-11:30  \n   Lecture (1a)\n \n \n \n \n Conservation laws and the numerical solution of the Navier–Stokes equations\n \n \n \n \n \n \n 11:45-13:00  \n   Lecture (1b)\n \n \n \n \n Advection-diffusion, diffusion-reaction, and other transport equations\n Brief intro to Basilisk coding framework First coding steps 15:00-18:00  \n   Hybrid Session\n \n \n \n \n Implementing basic transport equations in Basilisk C\n Whiteboard + coding", + "url": "/teaching/2025-Basilisk101-Madrid.html#Monday%3A%2BFoundations", + "type": "teaching_section", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Tuesday: Advanced Implementation", + "content": "Coding like a pro 10:00-11:15  \n   Hackathon (1c)\n \n \n \n \n Using headers in Basilisk, modular code structure, problem setup, and compilation\n \n \n \n \n \n \n 11:30-13:00  \n   Hackathon Continued\n \n \n \n \n Expanding on the morning tasks and code debugging", + "url": "/teaching/2025-Basilisk101-Madrid.html#Tuesday%3A%2BAdvanced%2BImplementation", + "type": "teaching_section", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Wednesday: Interface Dynamics", + "content": "Interface tracking methods 10:00-11:30  \n   Lecture (2a)\n \n \n \n \n Interface tracking methods (VoF, level set, phase-field approaches) and numerical strategies\n \n \n \n \n \n \n 11:45-13:00  \n   Hackathon (2b)\n \n \n \n \n Hands-on tutorial applying interface-tracking to a simple two-phase problem Seminar 13:30-14:00  \n   Department seminar (2c)\n \n \n \n \n A note on the thrust of airfoils by José Manuel Gordillo Non-Newtonian flows 15:00-16:00  \n   Lecture (3a)\n \n \n \n \n Non-Newtonian flows: viscoplasticity and viscoelasticity\n \n \n \n \n \n \n 16:15-18:00  \n   Hackathon (3b)\n \n \n \n \n Coding exercises for shear-thinning, viscoplastic, or viscoelastic fluids", + "url": "/teaching/2025-Basilisk101-Madrid.html#Wednesday%3A%2BInterface%2BDynamics", + "type": "teaching_section", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Thursday: Special Topics", + "content": "Special topics 10:00-11:30  \n   Lecture (4a)\n \n \n \n \n Special Topics: multilayer solver, lubrication equation, Marangoni flows, manifold death, and research-oriented examples\n \n \n \n \n \n \n 11:45-13:00  \n   Hackathon (4b)\n \n \n \n \n Focused tutorials on the special topics introduced in the lecture\n \n \n \n \n \n \n 15:00-16:30  \n   Lecture (4c)\n \n \n \n \n Open discussion, deeper dives into advanced features, final code reviews, and next steps Prerequisites Basic knowledge of fluid mechanics\n Experience with programming (any language, C preferred)\n Understanding of partial differential equations\n Laptop with ability to compile C code Registration For registration details, please contact bubbles@ing.uc3m.es vatsalsy@comphy-lab.org function copyEmail(button) {\n const textToCopy = button.getAttribute('data-text');\n \n // Create a temporary textarea element to copy from\n const textarea = document.createElement('textarea');\n textarea.value = textToCopy;\n textarea.setAttribute('readonly', '');\n textarea.style.position = 'absolute';\n textarea.style.left = '-9999px';\n document.body.appendChild(textarea);\n \n // Select and copy the text\n textarea.select();\n document.execCommand('copy');\n \n // Remove the temporary element\n document.body.removeChild(textarea);\n \n // Show feedback\n const originalIcon = button.innerHTML;\n button.innerHTML = '';\n button.classList.add('copied');\n \n // Restore original state after a delay\n setTimeout(() => {\n button.innerHTML = originalIcon;\n button.classList.remove('copied');\n }, 2000);\n} Course GitHub Repository", + "url": "/teaching/2025-Basilisk101-Madrid.html#Thursday%3A%2BSpecial%2BTopics", + "type": "teaching_section", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Prerequisites", + "content": "Basic knowledge of fluid mechanics\n Experience with programming (any language, C preferred)\n Understanding of partial differential equations\n Laptop with ability to compile C code", + "url": "/teaching/2025-Basilisk101-Madrid.html#Prerequisites", + "type": "teaching_course_info", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Course Description", + "content": "This intensive 4-day course provides a comprehensive introduction to high-fidelity simulations using Basilisk C, a powerful computational framework for fluid dynamics. Participants will learn to implement and solve complex fluid mechanics problems with an emphasis on multiphase flows, interface dynamics, and non-Newtonian rheology. The course combines theoretical lectures with extensive hands-on sessions, allowing participants to immediately apply concepts through guided coding exercises. By the end of the course, you’ll be able to develop your own simulations for a variety of fluid dynamics applications.", + "url": "/teaching/2025-Basilisk101-Madrid.html#Course%2BDescription", + "type": "teaching_course_info", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - Registration", + "content": "For registration details, please contact bubbles@ing.uc3m.es vatsalsy@comphy-lab.org function copyEmail(button) {\n const textToCopy = button.getAttribute('data-text');\n \n // Create a temporary textarea element to copy from\n const textarea = document.createElement('textarea');\n textarea.value = textToCopy;\n textarea.setAttribute('readonly', '');\n textarea.style.position = 'absolute';\n textarea.style.left = '-9999px';\n document.body.appendChild(textarea);\n \n // Select and copy the text\n textarea.select();\n document.execCommand('copy');\n \n // Remove the temporary element\n document.body.removeChild(textarea);\n \n // Show feedback\n const originalIcon = button.innerHTML;\n button.innerHTML = '';\n button.classList.add('copied');\n \n // Restore original state after a delay\n setTimeout(() => {\n button.innerHTML = originalIcon;\n button.classList.remove('copied');\n }, 2000);\n} Course GitHub Repository", + "url": "/teaching/2025-Basilisk101-Madrid.html#Registration", + "type": "teaching_course_info", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C - CoMPhy Lab - What will you learn", + "content": "Think before you compute! Understanding the physics before implementation\n Writing the first code in Basilisk C Getting comfortable with the framework\n Solving conservation equations Numerical approaches to fluid dynamics\n Interface tracking methods Capturing multiphase phenomena accurately\n Non-Newtonian flows Modeling complex rheological behaviors", + "url": "/teaching/2025-Basilisk101-Madrid.html#What%2Bwill%2Byou%2Blearn", + "type": "teaching_course_info", + "priority": 2 + }, + { + "title": "Dates", + "content": "March 10-13, 2025", + "url": "/teaching/2025-Basilisk101-Madrid.html#Dates", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Location", + "content": "Universidad Carlos III de Madrid, Spain", + "url": "/teaching/2025-Basilisk101-Madrid.html#Location", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Duration", + "content": "4 days, full-time", + "url": "/teaching/2025-Basilisk101-Madrid.html#Duration", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Course Description", + "content": "This intensive 4-day course provides a comprehensive introduction to high-fidelity simulations using Basilisk C, a powerful computational framework for fluid dynamics. Participants will learn to implement and solve complex fluid mechanics problems with an emphasis on multiphase flows, interface dynamics, and non-Newtonian rheology.", + "url": "/teaching/2025-Basilisk101-Madrid.html#Course%2BDescription", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Course Description", + "content": "The course combines theoretical lectures with extensive hands-on sessions, allowing participants to immediately apply concepts through guided coding exercises. By the end of the course, you’ll be able to develop your own simulations for a variety of fluid dynamics applications.", + "url": "/teaching/2025-Basilisk101-Madrid.html#Course%2BDescription", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Registration", + "content": "For registration details, please contact", + "url": "/teaching/2025-Basilisk101-Madrid.html#Registration", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Registration", + "content": "© Copyright\n CoMPhy Lab 2025", + "url": "/teaching/2025-Basilisk101-Madrid.html#Registration", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C", + "content": "Think before you compute! Understanding the physics before implementation\n Writing the first code in Basilisk C Getting comfortable with the framework\n Solving conservation equations Numerical approaches to fluid dynamics\n Interface tracking methods Capturing multiphase phenomena accurately\n Non-Newtonian flows Modeling complex rheological behaviors This intensive 4-day course provides a comprehensive introduction to high-fidelity simulations using Basilisk C, a powerful computational framework for fluid dynamics. Participants will learn to implement and solve complex fluid mechanics problems with an emphasis on multiphase flows, interface dynamics, and non-Newtonian rheology. The course combines theoretical lectures with extensive hands-on sessions, allowing participants to immediately apply concepts through guided coding exercises. By the end of the course, you’ll be able to develop your own simulations for a variety of fluid dynamics applications. 10:00-11:30  \n   Lecture (1a)\n \n \n \n \n Conservation laws and the numerical solution of the Navier–Stokes equations\n \n \n \n \n \n \n 11:45-13:00  \n   Lecture (1b)\n \n \n \n \n Advection-diffusion, diffusion-reaction, and other transport equations\n Brief intro to Basilisk coding framework 15:00-18:00  \n   Hybrid Session\n \n \n \n \n Implementing basic transport equations in Basilisk C\n Whiteboard + coding 10:00-11:15  \n   Hackathon (1c)\n \n \n \n \n Using headers in Basilisk, modular code structure, problem setup, and compilation\n \n \n \n \n \n \n 11:30-13:00  \n   Hackathon Continued\n \n \n \n \n Expanding on the morning tasks and code debugging 10:00-11:30  \n   Lecture (2a)\n \n \n \n \n Interface tracking methods (VoF, level set, phase-field approaches) and numerical strategies\n \n \n \n \n \n \n 11:45-13:00  \n   Hackathon (2b)\n \n \n \n \n Hands-on tutorial applying interface-tracking to a simple two-phase problem 13:30-14:00  \n   Department seminar (2c)\n \n \n \n \n A note on the thrust of airfoils by José Manuel Gordillo 15:00-16:00  \n   Lecture (3a)\n \n \n \n \n Non-Newtonian flows: viscoplasticity and viscoelasticity\n \n \n \n \n \n \n 16:15-18:00  \n   Hackathon (3b)\n \n \n \n \n Coding exercises for shear-thinning, viscoplastic, or viscoelastic fluids 10:00-11:30  \n   Lecture (4a)\n \n \n \n \n Special Topics: multilayer solver, lubrication equation, Marangoni flows, manifold death, and research-oriented examples\n \n \n \n \n \n \n 11:45-13:00  \n   Hackathon (4b)\n \n \n \n \n Focused tutorials on the special topics introduced in the lecture\n \n \n \n \n \n \n 15:00-16:30  \n   Lecture (4c)\n \n \n \n \n Open discussion, deeper dives into advanced features, final code reviews, and next steps Basic knowledge of fluid mechanics\n Experience with programming (any language, C preferred)\n Understanding of partial differential equations\n Laptop with ability to compile C code For registration details, please contact", + "url": "/teaching/2025-Basilisk101-Madrid.html#High-Fidelity%2BSimulations%2BUsing%2BBasilisk%2BC", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "What will you learn?", + "content": "Think before you compute! Understanding the physics before implementation\n Writing the first code in Basilisk C Getting comfortable with the framework\n Solving conservation equations Numerical approaches to fluid dynamics\n Interface tracking methods Capturing multiphase phenomena accurately\n Non-Newtonian flows Modeling complex rheological behaviors", + "url": "/teaching/2025-Basilisk101-Madrid.html#What%2Bwill%2Byou%2Blearn", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Course Description", + "content": "This intensive 4-day course provides a comprehensive introduction to high-fidelity simulations using Basilisk C, a powerful computational framework for fluid dynamics. Participants will learn to implement and solve complex fluid mechanics problems with an emphasis on multiphase flows, interface dynamics, and non-Newtonian rheology. The course combines theoretical lectures with extensive hands-on sessions, allowing participants to immediately apply concepts through guided coding exercises. By the end of the course, you’ll be able to develop your own simulations for a variety of fluid dynamics applications.", + "url": "/teaching/2025-Basilisk101-Madrid.html#Course%2BDescription", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Course Schedule", + "content": "10:00-11:30  \n   Lecture (1a)\n \n \n \n \n Conservation laws and the numerical solution of the Navier–Stokes equations\n \n \n \n \n \n \n 11:45-13:00  \n   Lecture (1b)\n \n \n \n \n Advection-diffusion, diffusion-reaction, and other transport equations\n Brief intro to Basilisk coding framework 15:00-18:00  \n   Hybrid Session\n \n \n \n \n Implementing basic transport equations in Basilisk C\n Whiteboard + coding 10:00-11:15  \n   Hackathon (1c)\n \n \n \n \n Using headers in Basilisk, modular code structure, problem setup, and compilation\n \n \n \n \n \n \n 11:30-13:00  \n   Hackathon Continued\n \n \n \n \n Expanding on the morning tasks and code debugging 10:00-11:30  \n   Lecture (2a)\n \n \n \n \n Interface tracking methods (VoF, level set, phase-field approaches) and numerical strategies\n \n \n \n \n \n \n 11:45-13:00  \n   Hackathon (2b)\n \n \n \n \n Hands-on tutorial applying interface-tracking to a simple two-phase problem 13:30-14:00  \n   Department seminar (2c)\n \n \n \n \n A note on the thrust of airfoils by José Manuel Gordillo 15:00-16:00  \n   Lecture (3a)\n \n \n \n \n Non-Newtonian flows: viscoplasticity and viscoelasticity\n \n \n \n \n \n \n 16:15-18:00  \n   Hackathon (3b)\n \n \n \n \n Coding exercises for shear-thinning, viscoplastic, or viscoelastic fluids 10:00-11:30  \n   Lecture (4a)\n \n \n \n \n Special Topics: multilayer solver, lubrication equation, Marangoni flows, manifold death, and research-oriented examples\n \n \n \n \n \n \n 11:45-13:00  \n   Hackathon (4b)\n \n \n \n \n Focused tutorials on the special topics introduced in the lecture\n \n \n \n \n \n \n 15:00-16:30  \n   Lecture (4c)\n \n \n \n \n Open discussion, deeper dives into advanced features, final code reviews, and next steps", + "url": "/teaching/2025-Basilisk101-Madrid.html#Course%2BSchedule", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Monday: Foundations", + "content": "10:00-11:30  \n   Lecture (1a)\n \n \n \n \n Conservation laws and the numerical solution of the Navier–Stokes equations\n \n \n \n \n \n \n 11:45-13:00  \n   Lecture (1b)\n \n \n \n \n Advection-diffusion, diffusion-reaction, and other transport equations\n Brief intro to Basilisk coding framework 15:00-18:00  \n   Hybrid Session\n \n \n \n \n Implementing basic transport equations in Basilisk C\n Whiteboard + coding", + "url": "/teaching/2025-Basilisk101-Madrid.html#Monday%3A%2BFoundations", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Tuesday: Advanced Implementation", + "content": "10:00-11:15  \n   Hackathon (1c)\n \n \n \n \n Using headers in Basilisk, modular code structure, problem setup, and compilation\n \n \n \n \n \n \n 11:30-13:00  \n   Hackathon Continued\n \n \n \n \n Expanding on the morning tasks and code debugging", + "url": "/teaching/2025-Basilisk101-Madrid.html#Tuesday%3A%2BAdvanced%2BImplementation", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Wednesday: Interface Dynamics", + "content": "10:00-11:30  \n   Lecture (2a)\n \n \n \n \n Interface tracking methods (VoF, level set, phase-field approaches) and numerical strategies\n \n \n \n \n \n \n 11:45-13:00  \n   Hackathon (2b)\n \n \n \n \n Hands-on tutorial applying interface-tracking to a simple two-phase problem 13:30-14:00  \n   Department seminar (2c)\n \n \n \n \n A note on the thrust of airfoils by José Manuel Gordillo 15:00-16:00  \n   Lecture (3a)\n \n \n \n \n Non-Newtonian flows: viscoplasticity and viscoelasticity\n \n \n \n \n \n \n 16:15-18:00  \n   Hackathon (3b)\n \n \n \n \n Coding exercises for shear-thinning, viscoplastic, or viscoelastic fluids", + "url": "/teaching/2025-Basilisk101-Madrid.html#Wednesday%3A%2BInterface%2BDynamics", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Thursday: Special Topics", + "content": "10:00-11:30  \n   Lecture (4a)\n \n \n \n \n Special Topics: multilayer solver, lubrication equation, Marangoni flows, manifold death, and research-oriented examples\n \n \n \n \n \n \n 11:45-13:00  \n   Hackathon (4b)\n \n \n \n \n Focused tutorials on the special topics introduced in the lecture\n \n \n \n \n \n \n 15:00-16:30  \n   Lecture (4c)\n \n \n \n \n Open discussion, deeper dives into advanced features, final code reviews, and next steps", + "url": "/teaching/2025-Basilisk101-Madrid.html#Thursday%3A%2BSpecial%2BTopics", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Prerequisites", + "content": "Basic knowledge of fluid mechanics\n Experience with programming (any language, C preferred)\n Understanding of partial differential equations\n Laptop with ability to compile C code", + "url": "/teaching/2025-Basilisk101-Madrid.html#Prerequisites", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Registration", + "content": "For registration details, please contact", + "url": "/teaching/2025-Basilisk101-Madrid.html#Registration", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Teaching - CoMPhy Lab - High-Fidelity Simulations Using Basilisk C", + "content": "Universidad Carlos III de Madrid March 10-13, 2025 A comprehensive course on using Basilisk C for simulating multiphase flows, interface tracking, and solving conservation equations. Learn to tackle complex fluid dynamics problems with high-fidelity numerical methods. View Course", + "url": "/teaching/index.html#High-Fidelity%2BSimulations%2BUsing%2BBasilisk%2BC", + "type": "teaching_section", + "priority": 2 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C", + "content": "High-Fidelity Simulations Using Basilisk C - Universidad Carlos III de Madrid\n - \n March 10-13, 2025 - A comprehensive course on using Basilisk C for simulating multiphase flows, interface tracking, and solving conservation equations. Learn to tackle complex fluid dynamics problems with high-fidelity numerical methods.", + "url": "/teaching/2025-Basilisk101-Madrid", + "type": "teaching_course", + "priority": 2 + }, + { + "title": "Teaching", + "content": "Welcome to the CoMPhy Lab’s educational resources. Apart from the university courses, we aim to develop and offer a range of workshops and tutorials on modern computational methods for multiphase flows and high-fidelity simulations.", + "url": "/teaching/index.html#Teaching", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C", + "content": "A comprehensive course on using Basilisk C for simulating multiphase flows, interface tracking, and solving conservation equations. Learn to tackle complex fluid dynamics problems with high-fidelity numerical methods.", + "url": "/teaching/index.html#High-Fidelity%2BSimulations%2BUsing%2BBasilisk%2BC", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "About Our Teaching Philosophy", + "content": "At CoMPhy Lab, we believe in hands-on learning and deep understanding of computational methods. Our courses combine theoretical foundations with practical implementation, allowing students to develop both conceptual understanding and technical skills.", + "url": "/teaching/index.html#About%2BOur%2BTeaching%2BPhilosophy", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "About Our Teaching Philosophy", + "content": "Our teaching approach emphasizes:", + "url": "/teaching/index.html#About%2BOur%2BTeaching%2BPhilosophy", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "About Our Teaching Philosophy", + "content": "If you’re interested in hosting a course or workshop with CoMPhy Lab, please contact us for collaboration opportunities.", + "url": "/teaching/index.html#About%2BOur%2BTeaching%2BPhilosophy", + "type": "text", + "links": [ + "join" + ], + "priority": 3 + }, + { + "title": "About Our Teaching Philosophy", + "content": "© Copyright\n CoMPhy Lab 2025", + "url": "/teaching/index.html#About%2BOur%2BTeaching%2BPhilosophy", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Teaching", + "content": "Welcome to the CoMPhy Lab’s educational resources. Apart from the university courses, we aim to develop and offer a range of workshops and tutorials on modern computational methods for multiphase flows and high-fidelity simulations. At CoMPhy Lab, we believe in hands-on learning and deep understanding of computational methods. Our courses combine theoretical foundations with practical implementation, allowing students to develop both conceptual understanding and technical skills. Our teaching approach emphasizes: Think before you compute: Understanding the underlying physics before implementation\n Modular code structure: Building maintainable and extensible computational tools\n Advanced numerical methods: Mastering state-of-the-art techniques for complex problems\n Open science: Sharing knowledge and tools with the scientific community. Checkout If you’re interested in hosting a course or workshop with CoMPhy Lab, please contact us for collaboration opportunities.", + "url": "/teaching/index.html#Teaching", + "type": "section", + "links": [ + "teaching/2025-Basilisk101-Madrid", + "join" + ], + "priority": 3 + }, + { + "title": "High-Fidelity Simulations Using Basilisk C", + "content": "A comprehensive course on using Basilisk C for simulating multiphase flows, interface tracking, and solving conservation equations. Learn to tackle complex fluid dynamics problems with high-fidelity numerical methods.", + "url": "/teaching/index.html#High-Fidelity%2BSimulations%2BUsing%2BBasilisk%2BC", + "type": "section", + "links": [ + "teaching/2025-Basilisk101-Madrid" + ], + "priority": 3 + }, + { + "title": "About Our Teaching Philosophy", + "content": "At CoMPhy Lab, we believe in hands-on learning and deep understanding of computational methods. Our courses combine theoretical foundations with practical implementation, allowing students to develop both conceptual understanding and technical skills. Our teaching approach emphasizes: Think before you compute: Understanding the underlying physics before implementation\n Modular code structure: Building maintainable and extensible computational tools\n Advanced numerical methods: Mastering state-of-the-art techniques for complex problems\n Open science: Sharing knowledge and tools with the scientific community. Checkout If you’re interested in hosting a course or workshop with CoMPhy Lab, please contact us for collaboration opportunities.", + "url": "/teaching/index.html#About%2BOur%2BTeaching%2BPhilosophy", + "type": "section", + "links": [ + "teaching/2025-Basilisk101-Madrid", + "join" + ], + "priority": 3 + }, + { + "title": "Vatsal Sanjay (PI)", + "content": "Postdoc, Phys. Fluids - Univ. Twente / 2022-25\n Ph.D., Phys. Fluids - Univ. Twente / 2018-22\n B.Tech + M.Tech, Two-Phase Flow & Instability Lab, IIT-Roorkee / 2013-18\n Personal Website Research Interest: See here Download CV", + "url": "/team/index.html#Vatsal%2BSanjay%2BPI", + "type": "team_member", + "priority": 2 + }, + { + "title": "Ayush Dixit (Ph.D)", + "content": "Joint with Detlef Lohse Ph.D. Student, Phys. Fluids - Univ. Twente / 2023-now\n B.Tech + M.Tech, Two-Phase Flow & Instability Lab, IIT-Roorkee / 2018-23 Research Interest: Viscoelastic Flows, Bursting Bubbles, Respiratory Drops.", + "url": "/team/index.html#Ayush%2BDixit%2BPhD", + "type": "team_member", + "priority": 2 + }, + { + "title": "Aman Bhargava (Ph.D)", + "content": "Joint with Detlef Lohse Ph.D. Student, Phys. Fluids - Univ. Twente / 2024-now\n M.Sc. Chemical Engineering, Purdue University / 2022-23\n B.Tech. (Hons.) Chemical Engineering, IIT-Bombay / 2018-22 Research Interest: Inertial Contact Line, Drop Retraction.", + "url": "/team/index.html#Aman%2BBhargava%2BPhD", + "type": "team_member", + "priority": 2 + }, + { + "title": "Jnandeep Talukdar (M.Sc.)", + "content": "Joint with Detlef Lohse Ph.D. Student, Phys. Fluids - Univ. Twente / starting May 2025\n M.Sc. Student, Phys. Fluids - Univ. Twente / 2023-25\n B.Tech. Mechanical Engineering, IIT-Patna / 2019-23 Research Interest: Surfactant Dynamics, Dissipative Anomaly, Soft Wetting.", + "url": "/team/index.html#Jnandeep%2BTalukdar%2BMSc", + "type": "team_member", + "priority": 2 + }, + { + "title": "Saumili Jana (M.Sc.)", + "content": "Joint with Detlef Lohse Ph.D. Student, Phys. Fluids - Univ. Twente / starting Jul 2025\n B.Tech.+M.Tech. Student, IIT-Kharagpur / 2020-25\n Research Intern, Phys. Fluids - Univ. Twente / 2024 Research Interest: Soft Impact.", + "url": "/team/index.html#Saumili%2BJana%2BMSc", + "type": "team_member", + "priority": 2 + }, + { + "title": "Floris Hoek (M.Sc.)", + "content": "Joint with Martin van der Hoef and Alvaro Marin M.Sc. Student, Phys. Fluids - Univ. Twente / 2024 Research Interest: Molecular Dynamics Simulations of Evaporation-Driven Colloidal Self-Assembly.", + "url": "/team/index.html#Floris%2BHoek%2BMSc", + "type": "team_member", + "priority": 2 + }, + { + "title": "Xiangyu Zhang (Intern)", + "content": "Joint with Detlef Lohse Guest Researcher, Phys. Fluids - Univ. Twente / 2024\n City University of Hong Kong, China Research Interest: Viscoplastic Drop Impact.", + "url": "/team/index.html#Xiangyu%2BZhang%2BIntern", + "type": "team_member", + "priority": 2 + }, + { + "title": "Detlef Lohse", + "content": "Professor, Phys. Fluids - Univ. Twente Collaboration on: Drop Impact, Viscoelastic Flows, Dissipative Anomaly, Surfactant Dynamics, Electrolysis, Bubbles, and Everything in Between.", + "url": "/team/index.html#Detlef%2BLohse", + "type": "team_member", + "priority": 2 + }, + { + "title": "Jacco Snoeijer", + "content": "Professor, Phys. Fluids - Univ. Twente Collaboration on: Elastic Sheets, Viscoelasticity vs. Elasticity, Spinning Pizza.", + "url": "/team/index.html#Jacco%2BSnoeijer", + "type": "team_member", + "priority": 2 + }, + { + "title": "Dominik Krug", + "content": "Professor, RWTH Aachen University\n Adjunct Professor, Phys. Fluids - Univ. Twente Collaboration on: Electrolysis, Bubble Coalescence, Swimming Bubbles.", + "url": "/team/index.html#Dominik%2BKrug", + "type": "team_member", + "priority": 2 + }, + { + "title": "Maziyar Jalaal (Mazi)", + "content": "Associate Professor, Fluid Lab, Univ. Amsterdam Collaboration on: Plastocapillarity, Viscoplastic Flows.", + "url": "/team/index.html#Maziyar%2BJalaal%2BMazi", + "type": "team_member", + "priority": 2 + }, + { + "title": "Uddalok Sen (Udo)", + "content": "Assistant Professor, PhySM, Wageningen University and Research Collaboration on: Drop Impact, Sheet Retraction.", + "url": "/team/index.html#Uddalok%2BSen%2BUdo", + "type": "team_member", + "priority": 2 + }, + { + "title": "Alvaro Marin", + "content": "Adjunct Professor, Phys. Fluids - Univ. Twente Collaboration on: Colloidal Systems, Evaporation, Shell Formation.", + "url": "/team/index.html#Alvaro%2BMarin", + "type": "team_member", + "priority": 2 + }, + { + "title": "Christian Diddens", + "content": "Group Leader, Phys. Fluids - Univ. Twente\n Developer of pyoomph Collaboration on: Surfactant Dynamics in Free Surface Flows, Dissipative Anomaly, Sliding Drops.", + "url": "/team/index.html#Christian%2BDiddens", + "type": "team_member", + "priority": 2 + }, + { + "title": "Gareth McKinley", + "content": "Professor, MIT Collaboration on: Die-Swelling, Viscoelastic Flows.", + "url": "/team/index.html#Gareth%2BMcKinley", + "type": "team_member", + "priority": 2 + }, + { + "title": "John Kolinski", + "content": "Asst. Professor, EPFL (École Polytechnique Fédérale de Lausanne) Collaboration on: Soft Impact", + "url": "/team/index.html#John%2BKolinski", + "type": "team_member", + "priority": 2 + }, + { + "title": "C. Ricardo Constante-Amores", + "content": "Asst. Professor, Univ. Illinois Urbana-Champaign Collaboration on: Non-Newtonian Flows, Bubble Bursting, Herschel–Bulkley Fluids, Elastic Coating.", + "url": "/team/index.html#C%2BRicardo%2BConstante-Amores", + "type": "team_member", + "priority": 2 + }, + { + "title": "Radu Cimpeanu", + "content": "Assc. Professor, Univ. Warwick Collaboration on: Open-Source Code Development, Non-Coalescence Impacts.", + "url": "/team/index.html#Radu%2BCimpeanu", + "type": "team_member", + "priority": 2 + }, + { + "title": "Jie Feng", + "content": "Asst. Professor, Univ. Illinois Urbana-Champaign Collaboration on: Elastic Coating, Bursting Bubbles.", + "url": "/team/index.html#Jie%2BFeng", + "type": "team_member", + "priority": 2 + }, + { + "title": "Omar Matar", + "content": "Professor, Imperial College London Collaboration on: Surfactant Dynamics, Viscoelastic Drop Impact.", + "url": "/team/index.html#Omar%2BMatar", + "type": "team_member", + "priority": 2 + }, + { + "title": "Ratul Dasgupta", + "content": "Assc. Professor, IIT-Bombay Collaboration on: Waves, Dissipative Anomaly.", + "url": "/team/index.html#Ratul%2BDasgupta", + "type": "team_member", + "priority": 2 + }, + { + "title": "Eric Lauga", + "content": "Professor, Univ. Cambridge Collaboration on: Mycofluidic Transport.", + "url": "/team/index.html#Eric%2BLauga", + "type": "team_member", + "priority": 2 + }, + { + "title": "Saikat Datta", + "content": "Senior Lecturer, Swansea University Collaboration on: Multiscale Simulation, Ice Nucleation and Removal, Hydrogen Storage.", + "url": "/team/index.html#Saikat%2BDatta", + "type": "team_member", + "priority": 2 + }, + { + "title": "Doris Vollmer", + "content": "Apl. Professor, Max Planck Institute for Polymer Research, Mainz, Germany. Collaboration on: Contact Line, Drop Impact, Superhydrophobic Surfaces.", + "url": "/team/index.html#Doris%2BVollmer", + "type": "team_member", + "priority": 2 + }, + { + "title": "Stéphane Zaleski", + "content": "Professor, Sorbonne Universite Collaboration on: Holey Sheets.", + "url": "/team/index.html#Stphane%2BZaleski", + "type": "team_member", + "priority": 2 + }, + { + "title": "Pierre Chantelot", + "content": "Postdoc, Institut Langevin, ESPCI Paris Collaboration on: Drop Impact", + "url": "/team/index.html#Pierre%2BChantelot", + "type": "team_member", + "priority": 2 + }, + { + "title": "Aleksandr Bashkatov", + "content": "Postdoc, RWTH Aachen University Collaboration on: Electrolysis, Bubble Coalescence, Swimming Bubbles.", + "url": "/team/index.html#Aleksandr%2BBashkatov", + "type": "team_member", + "priority": 2 + }, + { + "title": "Vincent Bertin", + "content": "Postdoc, University Aix-Marseille Collaboration on: Elastic Sheets, Spinning Pizza.", + "url": "/team/index.html#Vincent%2BBertin", + "type": "team_member", + "priority": 2 + }, + { + "title": "Alexandros Oratis", + "content": "Postdoc, TU Delft Collaboration on: Electrolysis, Bubble Coalescence, Swimming Bubbles.", + "url": "/team/index.html#Alexandros%2BOratis", + "type": "team_member", + "priority": 2 + }, + { + "title": "Arivazhagan Balasubramanian (Ari)", + "content": "Ph.D. Student, KTH Sweden Collaboration on: Elastoviscoplastic Flows, Bursting Bubbles", + "url": "/team/index.html#Arivazhagan%2BBalasubramanian%2BAri", + "type": "team_member", + "priority": 2 + }, + { + "title": "Konstantinos Zinelis (Costis)", + "content": "Postdoc, MIT Collaboration on: Viscoelastic Flows, Drop Impact.", + "url": "/team/index.html#Konstantinos%2BZinelis%2BCostis", + "type": "team_member", + "priority": 2 + }, + { + "title": "Swen van den Heuvel", + "content": "Now: Ph.D. Student, Phys. Fluids - Univ. Twente\n 2023: Graduated with M.Sc., Univ. Twente\n Thesis: Hydrodynamic forces acting on vertically rising bubbles", + "url": "/team/index.html#Swen%2Bvan%2Bden%2BHeuvel", + "type": "team_member", + "priority": 2 + }, + { + "title": "Niels Kuipers", + "content": "Now: M.Sc. Student, Adv. Technology - Univ. Twente\n 2023: Graduated with B.Sc., Univ. Twente\n Thesis: Partial coalescence of drops on viscous films", + "url": "/team/index.html#Niels%2BKuipers", + "type": "team_member", + "priority": 2 + }, + { + "title": "Tom Appleford", + "content": "Now: Ph.D. Student, Fluid Lab - Univ. Amsterdam\n 2022: Graduated with M.Sc., Univ. Amsterdam\n Thesis: The deformation of a droplet in a viscoplastic simple shear flow", + "url": "/team/index.html#Tom%2BAppleford", + "type": "team_member", + "priority": 2 + }, + { + "title": "Coen Verschuur", + "content": "Now: Ph.D. Student, Phys. Fluids - Univ. Twente\n 2020: Graduated with B.Sc., Univ. Twente\n Thesis: Early time dynamics in immiscible drop impacts", + "url": "/team/index.html#Coen%2BVerschuur", + "type": "team_member", + "priority": 2 + }, + { + "title": "Pim J. Dekker", + "content": "Now: Ph.D. Student, Phys. Fluids - Univ. Twente\n 2019: Graduated with B.Sc., Univ. Twente\n Thesis: Spreading of a drop on a water-air interface", + "url": "/team/index.html#Pim%2BJ%2BDekker", + "type": "team_member", + "priority": 2 + }, + { + "title": "Vatsal Sanjay (PI)", + "content": "Research Interest: See here", + "url": "/team/index.html#Vatsal%2BSanjay%2BPI", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Vatsal Sanjay (PI)", + "content": "Download CV", + "url": "/team/index.html#Vatsal%2BSanjay%2BPI", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Ayush Dixit (Ph.D)", + "content": "Joint with Detlef Lohse", + "url": "/team/index.html#Ayush%2BDixit%2BPhD", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Ayush Dixit (Ph.D)", + "content": "Research Interest: Viscoelastic Flows, Bursting Bubbles, Respiratory Drops.", + "url": "/team/index.html#Ayush%2BDixit%2BPhD", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Aman Bhargava (Ph.D)", + "content": "Joint with Detlef Lohse", + "url": "/team/index.html#Aman%2BBhargava%2BPhD", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Aman Bhargava (Ph.D)", + "content": "Research Interest: Inertial Contact Line, Drop Retraction.", + "url": "/team/index.html#Aman%2BBhargava%2BPhD", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Jnandeep Talukdar (M.Sc.)", + "content": "Joint with Detlef Lohse", + "url": "/team/index.html#Jnandeep%2BTalukdar%2BMSc", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Jnandeep Talukdar (M.Sc.)", + "content": "Research Interest: Surfactant Dynamics, Dissipative Anomaly, Soft Wetting.", + "url": "/team/index.html#Jnandeep%2BTalukdar%2BMSc", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Saumili Jana (M.Sc.)", + "content": "Joint with Detlef Lohse", + "url": "/team/index.html#Saumili%2BJana%2BMSc", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Saumili Jana (M.Sc.)", + "content": "Research Interest: Soft Impact.", + "url": "/team/index.html#Saumili%2BJana%2BMSc", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Floris Hoek (M.Sc.)", + "content": "Joint with Martin van der Hoef and Alvaro Marin", + "url": "/team/index.html#Floris%2BHoek%2BMSc", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Floris Hoek (M.Sc.)", + "content": "Research Interest: Molecular Dynamics Simulations of Evaporation-Driven Colloidal Self-Assembly.", + "url": "/team/index.html#Floris%2BHoek%2BMSc", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Xiangyu Zhang (Intern)", + "content": "Joint with Detlef Lohse", + "url": "/team/index.html#Xiangyu%2BZhang%2BIntern", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Xiangyu Zhang (Intern)", + "content": "Research Interest: Viscoplastic Drop Impact.", + "url": "/team/index.html#Xiangyu%2BZhang%2BIntern", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "We need you!", + "content": "See: Join Us for ongoing projects.", + "url": "/team/index.html#We%2Bneed%2Byou", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Detlef Lohse", + "content": "Collaboration on: Drop Impact, Viscoelastic Flows, Dissipative Anomaly, Surfactant Dynamics, Electrolysis, Bubbles, and Everything in Between.", + "url": "/team/index.html#Detlef%2BLohse", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Jacco Snoeijer", + "content": "Collaboration on: Elastic Sheets, Viscoelasticity vs. Elasticity, Spinning Pizza.", + "url": "/team/index.html#Jacco%2BSnoeijer", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Dominik Krug", + "content": "Collaboration on: Electrolysis, Bubble Coalescence, Swimming Bubbles.", + "url": "/team/index.html#Dominik%2BKrug", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Maziyar Jalaal (Mazi)", + "content": "Collaboration on: Plastocapillarity, Viscoplastic Flows.", + "url": "/team/index.html#Maziyar%2BJalaal%2BMazi", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Uddalok Sen (Udo)", + "content": "Collaboration on: Drop Impact, Sheet Retraction.", + "url": "/team/index.html#Uddalok%2BSen%2BUdo", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Alvaro Marin", + "content": "Collaboration on: Colloidal Systems, Evaporation, Shell Formation.", + "url": "/team/index.html#Alvaro%2BMarin", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Christian Diddens", + "content": "Collaboration on: Surfactant Dynamics in Free Surface Flows, Dissipative Anomaly, Sliding Drops.", + "url": "/team/index.html#Christian%2BDiddens", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Gareth McKinley", + "content": "Collaboration on: Die-Swelling, Viscoelastic Flows.", + "url": "/team/index.html#Gareth%2BMcKinley", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "John Kolinski", + "content": "Collaboration on: Soft Impact", + "url": "/team/index.html#John%2BKolinski", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "C. Ricardo Constante-Amores", + "content": "Collaboration on: Non-Newtonian Flows, Bubble Bursting, Herschel–Bulkley Fluids, Elastic Coating.", + "url": "/team/index.html#C%2BRicardo%2BConstante-Amores", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Radu Cimpeanu", + "content": "Collaboration on: Open-Source Code Development, Non-Coalescence Impacts.", + "url": "/team/index.html#Radu%2BCimpeanu", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Jie Feng", + "content": "Collaboration on: Elastic Coating, Bursting Bubbles.", + "url": "/team/index.html#Jie%2BFeng", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Omar Matar", + "content": "Collaboration on: Surfactant Dynamics, Viscoelastic Drop Impact.", + "url": "/team/index.html#Omar%2BMatar", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Ratul Dasgupta", + "content": "Collaboration on: Waves, Dissipative Anomaly.", + "url": "/team/index.html#Ratul%2BDasgupta", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Eric Lauga", + "content": "Collaboration on: Mycofluidic Transport.", + "url": "/team/index.html#Eric%2BLauga", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Saikat Datta", + "content": "Collaboration on: Multiscale Simulation, Ice Nucleation and Removal, Hydrogen Storage.", + "url": "/team/index.html#Saikat%2BDatta", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Doris Vollmer", + "content": "Collaboration on: Contact Line, Drop Impact, Superhydrophobic Surfaces.", + "url": "/team/index.html#Doris%2BVollmer", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Stéphane Zaleski", + "content": "Collaboration on: Holey Sheets.", + "url": "/team/index.html#Stphane%2BZaleski", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Pierre Chantelot", + "content": "Collaboration on: Drop Impact", + "url": "/team/index.html#Pierre%2BChantelot", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Aleksandr Bashkatov", + "content": "Collaboration on: Electrolysis, Bubble Coalescence, Swimming Bubbles.", + "url": "/team/index.html#Aleksandr%2BBashkatov", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Vincent Bertin", + "content": "Collaboration on: Elastic Sheets, Spinning Pizza.", + "url": "/team/index.html#Vincent%2BBertin", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Alexandros Oratis", + "content": "Collaboration on: Electrolysis, Bubble Coalescence, Swimming Bubbles.", + "url": "/team/index.html#Alexandros%2BOratis", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Arivazhagan Balasubramanian (Ari)", + "content": "Collaboration on: Elastoviscoplastic Flows, Bursting Bubbles", + "url": "/team/index.html#Arivazhagan%2BBalasubramanian%2BAri", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Konstantinos Zinelis (Costis)", + "content": "Collaboration on: Viscoelastic Flows, Drop Impact.", + "url": "/team/index.html#Konstantinos%2BZinelis%2BCostis", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Team, collaborators, and Conference visits", + "content": "The locations marked on this map meet one of three criteria (in the order of preference): \n 1. Hometown of our team members (including alumni) in orange, \n 2. Base location of our collaborators in green,\n 3. Places where we have presented talks in purple, or\n 4. Places where we have visited for conferences (no talks) in gray.", + "url": "/team/index.html#Team%2Bcollaborators%2Band%2BConference%2Bvisits", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Team, collaborators, and Conference visits", + "content": "Loading map...", + "url": "/team/index.html#Team%2Bcollaborators%2Band%2BConference%2Bvisits", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Team, collaborators, and Conference visits", + "content": "© Copyright\n CoMPhy Lab 2025", + "url": "/team/index.html#Team%2Bcollaborators%2Band%2BConference%2Bvisits", + "type": "text", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Vatsal Sanjay (PI)", + "content": "Postdoc, Phys. Fluids - Univ. Twente / 2022-25\n Ph.D., Phys. Fluids - Univ. Twente / 2018-22\n B.Tech + M.Tech, Two-Phase Flow & Instability Lab, IIT-Roorkee / 2013-18\n Personal Website Research Interest: See here Download CV", + "url": "/team/index.html#Vatsal%2BSanjay%2BPI", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Ayush Dixit (Ph.D)", + "content": "Joint with Detlef Lohse Ph.D. Student, Phys. Fluids - Univ. Twente / 2023-now\n B.Tech + M.Tech, Two-Phase Flow & Instability Lab, IIT-Roorkee / 2018-23 Research Interest: Viscoelastic Flows, Bursting Bubbles, Respiratory Drops.", + "url": "/team/index.html#Ayush%2BDixit%2BPhD", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Aman Bhargava (Ph.D)", + "content": "Joint with Detlef Lohse Ph.D. Student, Phys. Fluids - Univ. Twente / 2024-now\n M.Sc. Chemical Engineering, Purdue University / 2022-23\n B.Tech. (Hons.) Chemical Engineering, IIT-Bombay / 2018-22 Research Interest: Inertial Contact Line, Drop Retraction.", + "url": "/team/index.html#Aman%2BBhargava%2BPhD", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Jnandeep Talukdar (M.Sc.)", + "content": "Joint with Detlef Lohse Ph.D. Student, Phys. Fluids - Univ. Twente / starting May 2025\n M.Sc. Student, Phys. Fluids - Univ. Twente / 2023-25\n B.Tech. Mechanical Engineering, IIT-Patna / 2019-23 Research Interest: Surfactant Dynamics, Dissipative Anomaly, Soft Wetting.", + "url": "/team/index.html#Jnandeep%2BTalukdar%2BMSc", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Saumili Jana (M.Sc.)", + "content": "Joint with Detlef Lohse Ph.D. Student, Phys. Fluids - Univ. Twente / starting Jul 2025\n B.Tech.+M.Tech. Student, IIT-Kharagpur / 2020-25\n Research Intern, Phys. Fluids - Univ. Twente / 2024 Research Interest: Soft Impact.", + "url": "/team/index.html#Saumili%2BJana%2BMSc", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Floris Hoek (M.Sc.)", + "content": "Joint with Martin van der Hoef and Alvaro Marin M.Sc. Student, Phys. Fluids - Univ. Twente / 2024 Research Interest: Molecular Dynamics Simulations of Evaporation-Driven Colloidal Self-Assembly.", + "url": "/team/index.html#Floris%2BHoek%2BMSc", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Xiangyu Zhang (Intern)", + "content": "Joint with Detlef Lohse Guest Researcher, Phys. Fluids - Univ. Twente / 2024\n City University of Hong Kong, China Research Interest: Viscoplastic Drop Impact.", + "url": "/team/index.html#Xiangyu%2BZhang%2BIntern", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "We need you!", + "content": "See: Join Us for ongoing projects.", + "url": "/team/index.html#We%2Bneed%2Byou", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Detlef Lohse", + "content": "Professor, Phys. Fluids - Univ. Twente Collaboration on: Drop Impact, Viscoelastic Flows, Dissipative Anomaly, Surfactant Dynamics, Electrolysis, Bubbles, and Everything in Between.", + "url": "/team/index.html#Detlef%2BLohse", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Jacco Snoeijer", + "content": "Professor, Phys. Fluids - Univ. Twente Collaboration on: Elastic Sheets, Viscoelasticity vs. Elasticity, Spinning Pizza.", + "url": "/team/index.html#Jacco%2BSnoeijer", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Dominik Krug", + "content": "Professor, RWTH Aachen University\n Adjunct Professor, Phys. Fluids - Univ. Twente Collaboration on: Electrolysis, Bubble Coalescence, Swimming Bubbles.", + "url": "/team/index.html#Dominik%2BKrug", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Maziyar Jalaal (Mazi)", + "content": "Associate Professor, Fluid Lab, Univ. Amsterdam Collaboration on: Plastocapillarity, Viscoplastic Flows.", + "url": "/team/index.html#Maziyar%2BJalaal%2BMazi", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Uddalok Sen (Udo)", + "content": "Assistant Professor, PhySM, Wageningen University and Research Collaboration on: Drop Impact, Sheet Retraction.", + "url": "/team/index.html#Uddalok%2BSen%2BUdo", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Alvaro Marin", + "content": "Adjunct Professor, Phys. Fluids - Univ. Twente Collaboration on: Colloidal Systems, Evaporation, Shell Formation.", + "url": "/team/index.html#Alvaro%2BMarin", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Christian Diddens", + "content": "Group Leader, Phys. Fluids - Univ. Twente\n Developer of pyoomph Collaboration on: Surfactant Dynamics in Free Surface Flows, Dissipative Anomaly, Sliding Drops.", + "url": "/team/index.html#Christian%2BDiddens", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Gareth McKinley", + "content": "Professor, MIT Collaboration on: Die-Swelling, Viscoelastic Flows.", + "url": "/team/index.html#Gareth%2BMcKinley", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "John Kolinski", + "content": "Asst. Professor, EPFL (École Polytechnique Fédérale de Lausanne) Collaboration on: Soft Impact", + "url": "/team/index.html#John%2BKolinski", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "C. Ricardo Constante-Amores", + "content": "Asst. Professor, Univ. Illinois Urbana-Champaign Collaboration on: Non-Newtonian Flows, Bubble Bursting, Herschel–Bulkley Fluids, Elastic Coating.", + "url": "/team/index.html#C%2BRicardo%2BConstante-Amores", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Radu Cimpeanu", + "content": "Assc. Professor, Univ. Warwick Collaboration on: Open-Source Code Development, Non-Coalescence Impacts.", + "url": "/team/index.html#Radu%2BCimpeanu", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Jie Feng", + "content": "Asst. Professor, Univ. Illinois Urbana-Champaign Collaboration on: Elastic Coating, Bursting Bubbles.", + "url": "/team/index.html#Jie%2BFeng", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Omar Matar", + "content": "Professor, Imperial College London Collaboration on: Surfactant Dynamics, Viscoelastic Drop Impact.", + "url": "/team/index.html#Omar%2BMatar", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Ratul Dasgupta", + "content": "Assc. Professor, IIT-Bombay Collaboration on: Waves, Dissipative Anomaly.", + "url": "/team/index.html#Ratul%2BDasgupta", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Eric Lauga", + "content": "Professor, Univ. Cambridge Collaboration on: Mycofluidic Transport.", + "url": "/team/index.html#Eric%2BLauga", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Saikat Datta", + "content": "Senior Lecturer, Swansea University Collaboration on: Multiscale Simulation, Ice Nucleation and Removal, Hydrogen Storage.", + "url": "/team/index.html#Saikat%2BDatta", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Doris Vollmer", + "content": "Apl. Professor, Max Planck Institute for Polymer Research, Mainz, Germany. Collaboration on: Contact Line, Drop Impact, Superhydrophobic Surfaces.", + "url": "/team/index.html#Doris%2BVollmer", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Stéphane Zaleski", + "content": "Professor, Sorbonne Universite Collaboration on: Holey Sheets.", + "url": "/team/index.html#Stphane%2BZaleski", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Pierre Chantelot", + "content": "Postdoc, Institut Langevin, ESPCI Paris Collaboration on: Drop Impact", + "url": "/team/index.html#Pierre%2BChantelot", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Aleksandr Bashkatov", + "content": "Postdoc, RWTH Aachen University Collaboration on: Electrolysis, Bubble Coalescence, Swimming Bubbles.", + "url": "/team/index.html#Aleksandr%2BBashkatov", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Vincent Bertin", + "content": "Postdoc, University Aix-Marseille Collaboration on: Elastic Sheets, Spinning Pizza.", + "url": "/team/index.html#Vincent%2BBertin", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Alexandros Oratis", + "content": "Postdoc, TU Delft Collaboration on: Electrolysis, Bubble Coalescence, Swimming Bubbles.", + "url": "/team/index.html#Alexandros%2BOratis", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Arivazhagan Balasubramanian (Ari)", + "content": "Ph.D. Student, KTH Sweden Collaboration on: Elastoviscoplastic Flows, Bursting Bubbles", + "url": "/team/index.html#Arivazhagan%2BBalasubramanian%2BAri", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Konstantinos Zinelis (Costis)", + "content": "Postdoc, MIT Collaboration on: Viscoelastic Flows, Drop Impact.", + "url": "/team/index.html#Konstantinos%2BZinelis%2BCostis", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Milan Sent", + "content": "2025: Graduated with B.Sc., Univ. Twente\n Thesis: Spinning Pizza", + "url": "/team/index.html#Milan%2BSent", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Valentin Rosario", + "content": "2024: Graduated with M.Sc., Univ. Amsterdam\n Thesis: Modelling the Ward–Hunt ice-shelf as viscoelastic solid", + "url": "/team/index.html#Valentin%2BRosario", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Swen van den Heuvel", + "content": "Now: Ph.D. Student, Phys. Fluids - Univ. Twente\n 2023: Graduated with M.Sc., Univ. Twente\n Thesis: Hydrodynamic forces acting on vertically rising bubbles", + "url": "/team/index.html#Swen%2Bvan%2Bden%2BHeuvel", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Niels Kuipers", + "content": "Now: M.Sc. Student, Adv. Technology - Univ. Twente\n 2023: Graduated with B.Sc., Univ. Twente\n Thesis: Partial coalescence of drops on viscous films", + "url": "/team/index.html#Niels%2BKuipers", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "C. H. (Luuk) Maurits", + "content": "2023: Graduated with M.Sc., Univ. Twente\n Thesis: When Laplace meets Marangoni", + "url": "/team/index.html#C%2BH%2BLuuk%2BMaurits", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Tom Appleford", + "content": "Now: Ph.D. Student, Fluid Lab - Univ. Amsterdam\n 2022: Graduated with M.Sc., Univ. Amsterdam\n Thesis: The deformation of a droplet in a viscoplastic simple shear flow", + "url": "/team/index.html#Tom%2BAppleford", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Twan Heijink", + "content": "Now: Software IVQA Engineer at Thales\n 2021: Graduated with B.Sc., Saxion Univ.\n Thesis: Standing waves at a fluid-fluid interface with plastocapillarity", + "url": "/team/index.html#Twan%2BHeijink", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Steven Meuleman", + "content": "Now: Mechanical Engineer at VIRO\n 2020: Graduated with B.Sc., Univ. Twente\n Thesis: Simulations of foam generation for a custom axisymmetric core-shell nozzle", + "url": "/team/index.html#Steven%2BMeuleman", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Thijmen Kroeze", + "content": "Now: CFD Engineer, Brink Climate Systems\n 2020: Graduated with B.Sc., Univ. Twente\n Thesis: Singular jet dynamics of drop impacts at high Bond numbers", + "url": "/team/index.html#Thijmen%2BKroeze", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Coen Verschuur", + "content": "Now: Ph.D. Student, Phys. Fluids - Univ. Twente\n 2020: Graduated with B.Sc., Univ. Twente\n Thesis: Early time dynamics in immiscible drop impacts", + "url": "/team/index.html#Coen%2BVerschuur", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Pim J. Dekker", + "content": "Now: Ph.D. Student, Phys. Fluids - Univ. Twente\n 2019: Graduated with B.Sc., Univ. Twente\n Thesis: Spreading of a drop on a water-air interface", + "url": "/team/index.html#Pim%2BJ%2BDekker", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Laurence Bruggink", + "content": "Now: Research Engineer at Alfen\n 2019: Graduated with B.Sc., Univ. Twente\n Thesis: Bursting bubble in a Herschel–Bulkley fluid", + "url": "/team/index.html#Laurence%2BBruggink", + "type": "section", + "links": [ + + ], + "priority": 3 + }, + { + "title": "Team, collaborators, and Conference visits", + "content": "The locations marked on this map meet one of three criteria (in the order of preference): \n 1. Hometown of our team members (including alumni) in orange, \n 2. Base location of our collaborators in green,\n 3. Places where we have presented talks in purple, or\n 4. Places where we have visited for conferences (no talks) in gray.", + "url": "/team/index.html#Team%2Bcollaborators%2Band%2BConference%2Bvisits", + "type": "section", + "links": [ + + ], + "priority": 3 + }, { "title": "0_README - Welcome to the CoMPhy Lab's documentation hub", "content": "Welcome to the CoMPhy Lab's documentation hub! We are based at the Physics of Fluids Department at the University of Twente, where we explore non-Newtonian free-surface flows and soft matter singularities.", diff --git a/scripts/build.sh b/scripts/build.sh index 9095420..51bb150 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -31,4 +31,8 @@ cd scripts bundle exec ruby generate_search_db.rb cd .. +# Generate pre-filtered research pages +echo "Generating pre-filtered research pages..." +bundle exec ruby scripts/generate_filtered_research.rb + echo "Build completed successfully!" diff --git a/scripts/generate_filtered_research.rb b/scripts/generate_filtered_research.rb new file mode 100755 index 0000000..ac83d0b --- /dev/null +++ b/scripts/generate_filtered_research.rb @@ -0,0 +1,123 @@ +#!/usr/bin/env ruby +require 'nokogiri' +require 'fileutils' + +# Path to the built research page +research_page_path = File.join(Dir.pwd, '_site', 'research', 'index.html') + +# Output directory for filtered pages +filtered_dir = File.join(Dir.pwd, '_site', 'research', 'tags') +FileUtils.mkdir_p(filtered_dir) + +# Read the research page +html = File.read(research_page_path) +doc = Nokogiri::HTML(html) + +# Find all unique tags +all_tags = [] +doc.css('tags span').each do |tag| + all_tags << tag.text unless all_tags.include?(tag.text) +end + +puts "Found #{all_tags.length} unique tags: #{all_tags.join(', ')}" + +# Create filtered pages for each tag +all_tags.each do |tag| + # Clone the document for this tag + tag_doc = Nokogiri::HTML(html) + + # Find all paper containers + paper_containers = tag_doc.css('.paper-container') + + # Hide paper containers that don't contain the current tag + paper_containers.each do |container| + container_tags = container.css('tags') + if container_tags.empty? || !container_tags.text.include?(tag) + container['class'] = "#{container['class']} hidden" + end + end + + # Highlight the current tag in the tag list and convert tags to links + tag_doc.css('tags span').each do |span| + tag_text = span.text + tag_slug = tag_text.downcase.gsub(/\s+/, '-') + + # Create a link element + link = tag_doc.create_element('a') + link['href'] = "/research/tags/#{tag_slug}.html" + + # Preserve existing classes + span_classes = span['class'] || "" + + # Add active class if this is the current tag + if tag_text == tag + span_classes = "#{span_classes} active".strip + end + + link['class'] = "#{span_classes} tag-link".strip + link.inner_html = span.inner_html + + # Replace the span with the link + span.replace(link) + end + + # Add a note about the active filter + filter_note = tag_doc.create_element('div') + filter_note['class'] = 'filter-note' + filter_note.inner_html = "

Currently filtered by tag: #{tag} Clear filter

" + + # Insert the filter note after the tag list section + tag_list_section = tag_doc.at_css('tags').parent + tag_list_section.add_next_sibling(filter_note) + + # Write the filtered page + output_path = File.join(filtered_dir, "#{tag.downcase.gsub(/\s+/, '-')}.html") + File.write(output_path, tag_doc.to_html) + puts "Created filtered page for tag '#{tag}' at #{output_path}" +end + +# Create a tag index page +index_html = <<~HTML + + + + + + + Research Tags + + +

Redirecting to research page...

+ + +HTML + +index_path = File.join(filtered_dir, 'index.html') +File.write(index_path, index_html) +puts "Created tags index page at #{index_path}" + +# Modify the original research page to link to the pre-filtered pages +original_doc = Nokogiri::HTML(html) +original_doc.css('tags span').each do |span| + tag_text = span.text + tag_slug = tag_text.downcase.gsub(/\s+/, '-') + + # Create a link element + link = original_doc.create_element('a') + link['href'] = "/research/tags/#{tag_slug}.html" + + # Preserve any existing classes and add tag-link + span_classes = span['class'] || "" + link['class'] = "#{span_classes} tag-link".strip + + link.inner_html = span.inner_html + + # Replace the span with the link + span.replace(link) +end + +# Write the modified original page +File.write(research_page_path, original_doc.to_html) +puts "Updated original research page with links to filtered pages" + +puts "Successfully generated all filtered research pages!" \ No newline at end of file