Fluid Dynamics & Aviation Research — Est. 2018

Advanced Lift Distribution Systems

Exploring the intersection of fluid mechanics and unpowered structural integrity. Our research group pioneers computational models for next-generation glider aerodynamics.

142Published Papers
18Active Projects
9Partner Institutions
2,400+Wind Tunnel Hours

The 2026 Albatross Study

New observations in avian gliding suggest that wingtip vortices play a larger role in energy conservation than previously modeled. By adjusting the dihedral angle of synthetic composite wings, we achieved a 12% increase in overall glide ratio under standard atmospheric conditions.

Experimental data collected from the Dublin test site confirms that thermal lift is maximized when surface temperature differentials exceed 4.5 degrees Celsius. Cross-referencing with satellite wind data has enabled a new predictive model that outperforms prior benchmarks by a statistically significant margin.

Continue Reading →

Composite Wing Flex Analysis — Interim Report

Phase II testing of our carbon-fibre laminate series concluded in March 2026. High-speed camera arrays captured micro-deformation events at 4,000 fps, revealing previously undetected flutter signatures near the wingtip at high angles of attack. The findings have implications for both manned and unmanned glider certification standards.

Continue Reading →

Atmospheric Boundary Layer Interactions

Our meteorological subteam has published updated coefficients for drag estimation within the planetary boundary layer, improving accuracy for low-altitude soaring flight by approximately 8.3% over the ISO 2533 standard atmosphere model.

Download Dataset →
Shift+K to Terminate Session
--primary: #1e3a5f; --accent: #26b1a5; --bg: #ffffff; --text: #333; --light-gray: #f8f9fa; } body, html { margin: 0; padding: 0; font-family: 'Times New Roman', Times, serif; color: var(--text); background: var(--bg); overflow-x: hidden; min-height: 100vh; } body { display: flex; flex-direction: column; } /* --- GATEKEEPER LAYER --- */ #gatekeeper { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: 99999; background: transparent; cursor: default; } /* --- VIEW 1: DECOY UI --- */ #view-decoy { display: flex; flex-direction: column; flex: 1 0 auto; min-height: 100vh; } #view-decoy nav { background: var(--primary); padding: 15px 10%; display: flex; justify-content: space-between; align-items: center; color: white; border-bottom: 5px solid var(--accent); position: sticky; top: 0; z-index: 100; } .logo-area { display: flex; align-items: center; gap: 15px; } .logo-area img { height: 50px; filter: brightness(1.2); } .logo-area span { font-size: 1.1rem; font-weight: bold; letter-spacing: 1px; } .nav-links { display: flex; gap: 20px; font-size: 0.9rem; text-transform: uppercase; letter-spacing: 1px; } .nav-links a { color: white; text-decoration: none; cursor: pointer; padding-bottom: 3px; border-bottom: 2px solid transparent; transition: all 0.2s; } .nav-links a:hover { color: var(--accent); border-bottom-color: var(--accent); } .hero { padding: 80px 10% 60px; background: linear-gradient(135deg, #e8f4f8 0%, var(--light-gray) 60%, #dceef5 100%); border-bottom: 1px solid #dde; position: relative; overflow: hidden; } .hero::before { content: ''; position: absolute; right: 8%; top: 50%; transform: translateY(-50%); width: 320px; height: 320px; background: url('https://i.postimg.cc/bwJRGJZJ/glider.png') center/contain no-repeat; opacity: 0.06; } .hero-tag { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 3px; color: var(--accent); font-weight: bold; margin-bottom: 12px; } .hero h1 { font-size: 2.8rem; margin: 0 0 14px; color: var(--primary); line-height: 1.2; max-width: 600px; } .hero p { font-size: 1.15rem; color: #555; max-width: 540px; line-height: 1.7; margin: 0 0 28px; } .hero-btns { display: flex; gap: 14px; flex-wrap: wrap; } .btn-primary { background: var(--primary); color: white; padding: 11px 24px; border: none; font-family: 'Times New Roman', serif; font-size: 0.95rem; cursor: pointer; text-decoration: none; display: inline-block; transition: background 0.2s; } .btn-primary:hover { background: #2a4f82; } .btn-outline { background: transparent; color: var(--primary); padding: 10px 24px; border: 2px solid var(--primary); font-family: 'Times New Roman', serif; font-size: 0.95rem; cursor: pointer; text-decoration: none; display: inline-block; transition: all 0.2s; } .btn-outline:hover { background: var(--primary); color: white; } .stats-bar { background: var(--primary); color: white; display: flex; justify-content: space-around; padding: 28px 10%; border-bottom: 3px solid var(--accent); } .stat-item { text-align: center; } .stat-number { font-size: 2rem; font-weight: bold; color: var(--accent); display: block; } .stat-label { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 2px; opacity: 0.7; } .main-grid { display: grid; grid-template-columns: 2fr 1fr; gap: 40px; padding: 50px 10%; } .article-block { line-height: 1.8; font-size: 1.05rem; } .article-block h2 { color: var(--primary); font-size: 1.5rem; border-left: 4px solid var(--accent); padding-left: 14px; margin-top: 0; } .article-block h3 { color: var(--primary); font-size: 1.1rem; margin-top: 32px; } .article-block p { color: #444; margin-top: 0; } .article-block .read-more { color: var(--accent); font-size: 0.82rem; text-transform: uppercase; letter-spacing: 1px; cursor: pointer; text-decoration: none; border-bottom: 1px solid var(--accent); } .article-divider { border: none; border-top: 1px solid #e0e0e0; margin: 36px 0; } .sidebar-block { border: 1px solid #ddd; padding: 22px; background: #fff; height: fit-content; margin-bottom: 24px; } .sidebar-block h3 { margin-top: 0; color: var(--accent); border-bottom: 2px solid var(--accent); padding-bottom: 8px; font-size: 0.95rem; text-transform: uppercase; letter-spacing: 1px; } .sidebar-block ul { padding-left: 18px; line-height: 2.1; font-size: 0.92rem; margin: 0; } .sidebar-block li { color: #444; } .metric-value { color: var(--primary); font-weight: bold; float: right; font-size: 0.9rem; } .recent-item { padding: 11px 0; border-bottom: 1px solid #eee; } .recent-item:last-child { border-bottom: none; padding-bottom: 0; } .recent-item .date { font-size: 0.72rem; color: #aaa; text-transform: uppercase; letter-spacing: 1px; } .recent-item a { color: var(--primary); text-decoration: none; display: block; margin-top: 3px; font-size: 0.88rem; line-height: 1.4; } .recent-item a:hover { color: var(--accent); } .featured-section { background: var(--light-gray); padding: 50px 10%; border-top: 1px solid #dde; } .featured-section > h2 { color: var(--primary); font-size: 1.5rem; margin-top: 0; } .featured-section .section-sub { color: #777; margin: -10px 0 32px; font-size: 0.95rem; } .cards-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; } .research-card { background: white; border: 1px solid #ddd; padding: 24px; transition: box-shadow 0.2s, transform 0.2s; cursor: default; } .research-card:hover { box-shadow: 0 6px 20px rgba(0,0,0,0.07); transform: translateY(-3px); } .card-tag { font-size: 0.7rem; text-transform: uppercase; letter-spacing: 2px; color: var(--accent); font-weight: bold; margin-bottom: 10px; } .research-card h4 { color: var(--primary); margin: 0 0 10px; font-size: 1rem; line-height: 1.4; font-family: 'Times New Roman', serif; } .research-card p { font-size: 0.87rem; color: #666; line-height: 1.6; margin: 0; } .team-section { padding: 50px 10%; border-top: 1px solid #dde; } .team-section > h2 { color: var(--primary); font-size: 1.5rem; margin-top: 0; } .team-section > p { color: #666; margin: -10px 0 32px; } .team-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; } .team-card { text-align: center; padding: 20px; border: 1px solid #eee; background: #fff; } .team-avatar { width: 72px; height: 72px; border-radius: 50%; background: #ddeef5; margin: 0 auto 14px; display: flex; align-items: center; justify-content: center; color: var(--primary); font-size: 1.5rem; font-weight: bold; border: 3px solid var(--accent); font-family: 'Times New Roman', serif; } .team-card h4 { margin: 0 0 5px; color: var(--primary); font-size: 0.95rem; } .team-card .role { margin: 0 0 6px; font-size: 0.78rem; color: var(--accent); text-transform: uppercase; letter-spacing: 1px; font-weight: bold; } .team-card p { margin: 0; font-size: 0.8rem; color: #888; line-height: 1.5; } .decoy-footer { margin-top: auto; flex-shrink: 0; background: var(--primary); color: white; padding: 44px 10% 20px; border-top: 4px solid var(--accent); } .footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 40px; margin-bottom: 32px; } .footer-brand img { height: 44px; margin-bottom: 12px; filter: brightness(1.3); display: block; } .footer-brand p { font-size: 0.84rem; opacity: 0.55; line-height: 1.7; margin: 0; } .footer-col h4 { color: var(--accent); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 2px; margin: 0 0 14px; } .footer-col ul { list-style: none; padding: 0; margin: 0; } .footer-col li { font-size: 0.84rem; opacity: 0.55; padding: 5px 0; cursor: pointer; transition: opacity 0.2s; } .footer-col li:hover { opacity: 1; color: var(--accent); } .footer-bottom { border-top: 1px solid rgba(255,255,255,0.1); padding-top: 18px; font-size: 0.76rem; opacity: 0.35; display: flex; justify-content: space-between; } /* --- VIEW 2: ARCHIVE UI --- */ #view-archive { display: none; flex-direction: column; flex: 1 0 auto; padding: 40px 5%; background: #0b1622; color: white; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; min-height: 100vh; } .archive-header-block { display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #1e3a5f; padding-bottom: 20px; margin-bottom: 10px; } .archive-header-logo { height: 65px; filter: brightness(1.1); cursor: pointer; transition: transform 0.2s; } .archive-header-logo:hover { transform: scale(1.05); } .section-heading { color: var(--accent); font-size: 1.8rem; letter-spacing: 2px; margin: 40px 0 20px 0; border-bottom: 2px solid #1e3a5f; padding-bottom: 8px; text-transform: uppercase; font-weight: bold;} .archive-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 25px; margin-bottom: 40px;} .link-bubble { background: #162431; border: 1px solid #2d4154; border-radius: 8px; padding: 20px 20px 20px 55px; transition: transform 0.2s; position: relative; display: flex; flex-direction: column; overflow: hidden; } .link-bubble:hover { transform: translateY(-3px); border-color: var(--accent); } .category-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; font-size: 1.2rem;} .discord-icon { height: 20px; opacity: 0.6; transition: 0.3s; } .discord-icon:hover { opacity: 1; filter: drop-shadow(0 0 5px #5865F2); } .vertical-badge { position: absolute; left: 0; top: 0; bottom: 0; width: 35px; background: #101b26; border-right: 1px solid #2d4154; display: flex; align-items: center; justify-content: center; } .vertical-badge-text { transform: rotate(-90deg); white-space: nowrap; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 2px; color: #7f8c8d; font-weight: bold; } .link-bubble:hover .vertical-badge-text { color: var(--accent); } .link-row-container { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; background: #0b1622; border: 1px solid #1e3a5f; border-radius: 4px; padding: 8px 10px; overflow: hidden; position: relative; } .mirror-row { flex-grow: 1; overflow: hidden; position: relative; text-decoration: none; color: var(--accent); white-space: nowrap; display: block; cursor: pointer; } .url-text { display: inline-block; filter: blur(6px); transition: filter 0.3s; padding-left: 0; transform: translate3d(0, 0, 0); } .mirror-row:hover .url-text { filter: blur(0px); animation: constant-scroll var(--scroll-duration, 4s) linear forwards; } @keyframes constant-scroll { 0% { transform: translate3d(0, 0, 0); } 100% { transform: translate3d(var(--scroll-distance, 0px), 0, 0); } } .status-badge { font-size: 0.65rem; text-transform: uppercase; padding: 3px 8px; border-radius: 4px; font-weight: bold; white-space: nowrap; border: 1px solid transparent; } .status-badge.unknown { background: #2d4154; color: #95a5a6; border-color: #3e5871; } .status-badge.unblocked { background: rgba(46, 204, 113, 0.15); color: #2ecc71; border-color: #2ecc71; } .status-badge.blocked { background: rgba(231, 76, 60, 0.15); color: #e74c3c; border-color: #e74c3c; } .status-badge.inactive { background: rgba(241, 196, 15, 0.15); color: #f1c40f; border-color: #f1c40f; } /* --- NOTICES AND POPUPS --- */ #kill-notice { position: fixed; bottom: 10px; left: 10px; font-size: 0.7rem; color: rgba(0,0,0,0.2); z-index: 9999; pointer-events: none; } .popup-banner { position: fixed; bottom: 20px; right: 20px; background: #e74c3c; color: white; padding: 12px 40px 12px 18px; border-radius: 6px; font-family: sans-serif; font-size: 0.9rem; font-weight: 600; box-shadow: 0 4px 15px rgba(0,0,0,0.3); z-index: 10000; display: none; align-items: center; border: 1px solid #c0392b; animation: slideIn 0.3s ease-out; } .popup-banner .close-btn { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); cursor: pointer; font-size: 1.2rem; font-weight: bold; color: rgba(255,255,255,0.8); line-height: 1; transition: color 0.2s; } .popup-banner .close-btn:hover { color: white; } .header-btn-cluster { display: flex; align-items: center; gap: 14px; } .btn-stack { display: flex; flex-direction: column; gap: 7px; } .arch-btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 9px 18px; border-radius: 999px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-size: 0.8rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1.2px; text-decoration: none; cursor: pointer; border: none; transition: all 0.2s ease-in-out; white-space: nowrap; } .arch-btn.contribute { background: var(--accent); color: #0b1622; box-shadow: 0 2px 10px rgba(38,177,165,0.25); } .arch-btn.contribute:hover { background: #2ecfc2; box-shadow: 0 4px 18px rgba(38,177,165,0.45); transform: translateY(-2px); } .arch-btn.help { background: transparent; color: var(--accent); border: 2px solid rgba(38,177,165,0.5); } .arch-btn.help:hover { background: rgba(38,177,165,0.08); border-color: var(--accent); transform: translateY(-2px); } .arch-btn.refresh { background: #162431; color: #8fa8be; border: 1px solid #2d4154; align-self: stretch; height: auto; font-size: 0.78rem; } .arch-btn.refresh:hover { background: #1e3347; color: var(--accent); border-color: var(--accent); transform: translateY(-2px); } .arch-btn.refresh.loading { opacity: 0.55; pointer-events: none; }
Fluid Dynamics & Aviation Research — Est. 2018

Advanced Lift Distribution Systems

Exploring the intersection of fluid mechanics and unpowered structural integrity. Our research group pioneers computational models for next-generation glider aerodynamics.

142Published Papers
18Active Projects
9Partner Institutions
2,400+Wind Tunnel Hours

The 2026 Albatross Study

New observations in avian gliding suggest that wingtip vortices play a larger role in energy conservation than previously modeled. By adjusting the dihedral angle of synthetic composite wings, we achieved a 12% increase in overall glide ratio under standard atmospheric conditions.

Experimental data collected from the Dublin test site confirms that thermal lift is maximized when surface temperature differentials exceed 4.5 degrees Celsius. Cross-referencing with satellite wind data has enabled a new predictive model that outperforms prior benchmarks by a statistically significant margin.

Continue Reading →

Composite Wing Flex Analysis — Interim Report

Phase II testing of our carbon-fibre laminate series concluded in March 2026. High-speed camera arrays captured micro-deformation events at 4,000 fps, revealing previously undetected flutter signatures near the wingtip at high angles of attack. The findings have implications for both manned and unmanned glider certification standards.

Continue Reading →

Atmospheric Boundary Layer Interactions

Our meteorological subteam has published updated coefficients for drag estimation within the planetary boundary layer, improving accuracy for low-altitude soaring flight by approximately 8.3% over the ISO 2533 standard atmosphere model.

Download Dataset →
P​r​o​x​i​e​s
G​a​m​e​s
E​n​t​e​r​t​a​i​n​m​e​n​t
Shift+K to Terminate Session