Skip to content

Commit f85792b

Browse files
committed
better
1 parent 6f910b0 commit f85792b

File tree

12 files changed

+866
-389
lines changed

12 files changed

+866
-389
lines changed

_includes/footer.html

Lines changed: 50 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,73 @@
1-
<br/>
21
<section id="footer">
32
<div class="container-footer">
43
<div class="panel-footer">
54
<div class="row">
6-
<div class="col-sm-3">
7-
<h5>About</h5>
5+
<div class="col-sm-4">
6+
<h5>About</h5>
87
<p>{{ site.about }}</p>
98
</div>
109

11-
<div class="col-sm-3">
12-
<h5>Information</h5>
10+
<div class="col-sm-4">
11+
<h5>Information</h5>
1312
<p>{{ site.information }}</p>
1413
</div>
1514

16-
<div class="col-sm-6">
15+
<div class="col-sm-4 text-center">
1716
<p>{{ site.coordinates }}</p>
1817
</div>
1918
</div>
2019

21-
<center><p>Last updated on {{ "now" | date: "%b %d, %Y" }}</br>
22-
&copy; 2021-{{ "now" | date: "%Y" }} Computational Physics @ GT </p></center>
20+
<p class="footer-copyright">Last updated on {{ "now" | date: "%b %d, %Y" }}<br/>
21+
&copy; 2021&ndash;{{ "now" | date: "%Y" }} Computational Physics @ GT</p>
2322
</div>
2423
</div>
2524
</div>
2625

26+
<button id="scroll-top-btn" class="scroll-top-btn" aria-label="Back to top">
27+
<i class="fas fa-chevron-up"></i>
28+
</button>
29+
2730
<script src="{{ "/assets/javascript/bootstrap/jquery.min.js" | relative_url }}"></script>
2831
<script src="{{ "/assets/javascript/bootstrap/bootstrap.bundle.min.js" | relative_url }}"></script>
2932
<script>
33+
// ── Scroll-to-top ──────────────────────────────────────────────────────────
34+
(function() {
35+
var btn = document.getElementById('scroll-top-btn');
36+
if (!btn) return;
37+
btn.addEventListener('click', function() {
38+
window.scrollTo({ top: 0, behavior: 'smooth' });
39+
});
40+
window.addEventListener('scroll', function() {
41+
btn.classList.toggle('visible', window.scrollY > 500);
42+
}, { passive: true });
43+
})();
44+
45+
// ── Hide empty publication year groups ─────────────────────────────────────
46+
document.querySelectorAll('h2.bibliography').forEach(function(h2) {
47+
var ol = h2.nextElementSibling;
48+
if (ol && ol.tagName === 'OL' && !ol.querySelector('.pub-entry')) {
49+
h2.style.setProperty('display', 'none', 'important');
50+
ol.style.setProperty('display', 'none', 'important');
51+
}
52+
});
53+
54+
// ── Jumbotron entrance animations ──────────────────────────────────────────
55+
(function() {
56+
if (!('IntersectionObserver' in window)) return;
57+
var cards = document.querySelectorAll('.jumbotron');
58+
var observer = new IntersectionObserver(function(entries) {
59+
entries.forEach(function(entry) {
60+
if (entry.isIntersecting) {
61+
entry.target.classList.add('anim-done');
62+
observer.unobserve(entry.target);
63+
}
64+
});
65+
}, { threshold: 0.06, rootMargin: '0px 0px -20px 0px' });
66+
cards.forEach(function(el) {
67+
observer.observe(el);
68+
});
69+
})();
70+
3071
function copyToClipboard(version) {
3172
const bibtex = {
3273
mfc50: `@article{wilfong26,
@@ -48,12 +89,11 @@ <h5>Information</h5>
4889
doi={10.1016/j.cpc.2021.108029}
4990
}`
5091
};
51-
92+
5293
navigator.clipboard.writeText(bibtex[version]).then(function() {
5394
alert('BibTeX copied to clipboard!');
5495
}, function(err) {
5596
console.error('Failed to copy: ', err);
56-
// Fallback for older browsers
5797
const textArea = document.createElement('textarea');
5898
textArea.value = bibtex[version];
5999
textArea.style.position = 'fixed';

_includes/head.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<link rel="preconnect" href="https://f.vimeocdn.com">
1818
<link rel="preconnect" href="https://fonts.googleapis.com">
1919
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
20-
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
20+
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap" rel="stylesheet">
2121

2222
<!-- Open Graph / Facebook -->
2323
<meta property="og:type" content="website">

_includes/header.html

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,15 @@
1616
<ul class="navbar-nav me-auto">
1717
<li class="nav-item dropdown">
1818
<li class="nav-item">
19-
<a class="nav-link" href="{{ site.url }}{{ site.baseurl }}/"><b>Home</b></a>
20-
</li>
21-
{% for page in site.nav_pages %}
19+
<a class="nav-link{% if page.url == '/' %} nav-active{% endif %}" href="{{ site.url }}{{ site.baseurl }}/"><b>Home</b></a>
20+
</li>
21+
{% for navpage in site.nav_pages %}
2222
<li class="nav-item">
23-
<a class="nav-link" href="{{ site.url }}{{ site.baseurl }}/{{page.name}}"><b>{% if page.display %}{{page.display}}{% else %}{{page.name | capitalize}}{% endif %}</b></a>
23+
<a class="nav-link{% if page.url contains navpage.name %} nav-active{% endif %}" href="{{ site.url }}{{ site.baseurl }}/{{navpage.name}}"><b>{% if navpage.display %}{{navpage.display}}{% else %}{{navpage.name | capitalize}}{% endif %}</b></a>
2424
</li>
2525
{% endfor %}
2626
<li class="nav-item">
27-
<a class="nav-link" href="https://comp-physics.group/group-docs/"><b>Docs</b></a>
27+
<a class="nav-link{% if page.url contains 'group-docs' %} nav-active{% endif %}" href="https://comp-physics.group/group-docs/"><b>Docs</b></a>
2828
</li>
2929
</li>
3030
</ul>

_layouts/bibliography-group.html

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
---
3+
<div class="pub-year-section">
4+
<div class="pub-year-header">
5+
<span class="pub-year-label">{{ group }}</span>
6+
</div>
7+
{{ bibliography }}
8+
</div>

_layouts/bibtemplate.html

Lines changed: 31 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,12 @@
33

44
<style>
55
pre{
6-
white-space: pre-wrap;
7-
white-space: -moz-pre-wrap;
8-
white-space: -pre-wrap;
9-
white-space: -o-pre-wrap;
10-
word-wrap: break-word;
6+
white-space: pre-wrap;
7+
white-space: -moz-pre-wrap;
8+
white-space: -pre-wrap;
9+
white-space: -o-pre-wrap;
10+
word-wrap: break-word;
1111
width:100%; overflow-x:auto;
12-
<!-- background-color: red; -->
1312
}
1413
ol li{
1514
padding: 0;
@@ -18,41 +17,34 @@
1817
padding-left: 0!important;
1918
margin: 0!important;
2019
}
21-
.bib-btn {
22-
font-size: 0.8rem;
23-
padding: 1px 6px;
24-
margin-bottom: 2px;
25-
}
2620
</style>
2721

28-
29-
<!-- primary, success, danger, warning-->
30-
31-
{% if entry.keywords contains "nonheavy" %}
32-
{% else %}
33-
<div class="text-justify">
22+
{% assign _allowed = "article inproceedings report unpublished" %}
23+
{% if _allowed contains entry.type and entry.keywords != "nonheavy" %}
24+
<div class="pub-entry">
3425
<div class="row">
35-
<div class="col-sm-2 col-2 d-none d-md-block" style="margin:0; padding:0; margin-top:3px;">
36-
<!-- <div class="col-sm-2 col-2"> -->
26+
<div class="col-sm-2 col-2 d-none d-md-block" style="margin:0; padding:0; margin-top:4px;">
27+
3728
{% if entry.type == "article" %}
38-
<center><button class="btn btn-primary btm-sm Disabled" style="width:100%;border-radius:12px;">ARTICLE</button></center>&nbsp;&nbsp;
39-
29+
<center><button class="btn btn-primary pub-type-badge Disabled">ARTICLE</button></center>
4030
{% endif %}
4131
{% if entry.type == "inproceedings" %}
42-
<center><button class="btn btn-success btm-sm Disabled" style="width:100%;border-radius:12px;">PROCEEDING</button></center>
32+
<center><button class="btn btn-success pub-type-badge Disabled">PROCEEDING</button></center>
4333
{% endif %}
4434
{% if entry.type == "report" %}
45-
<center><button class="btn btn-danger btm-sm Disabled" style="width:100%;border-radius:12px;">REPORT</button></center>
35+
<center><button class="btn btn-danger pub-type-badge Disabled">REPORT</button></center>
4636
{% endif %}
4737
{% if entry.type == "unpublished" %}
48-
<center><button class="btn btn-warning btm-sm Disabled" style="width:100%;border-radius:12px;">PREPRINT</button></center>
38+
<center><button class="btn btn-warning pub-type-badge Disabled">PREPRINT</button></center>
4939
{% endif %}
40+
5041
</div>
5142

5243
<div class="col-sm-10 col-10">
53-
<div class="row">
44+
<div>
5445
{{reference | replace_first: 'Radhakrishnan, A.', '<b>Radhakrishnan, A.</b>' | replace_first: 'Bati, A.', '<b>Bati, A.</b>' | replace_first: 'Le Berre, H. A.', '<b>Le Berre, H. A.</b>' | replace_first: 'Le Berre, H.', '<b>Le Berre, H.</b>' | replace_first: 'Zeng, Q.','<b>Zeng, Q.</b>' | replace_first: 'Kothari, Y.','<b>Kothari, Y.</b>' | replace_first: 'Panchal, A.', '<b>Panchal, A.</b>' | replace_first: 'Chrit, F. E.', '<b>Chrit, F. E.</b>' | replace_first: 'Kocherla, S.', '<b>Kocherla, S.</b>' | replace_first: 'Wilfong, B.', '<b>Wilfong, B.</b>' | replace_first: 'Sinha, A.', '<b>Sinha, A.</b>' | replace_first: 'Chu, T.', '<b>Chu, T.</b>' | replace_first: 'Song, Z.', '<b>Song, Z.</b>' | replace_first: 'Lee, M.', '<b>Lee, M.</b>', | replace_first: 'Gupta, A.', '<b>Gupta, A.</b>', | replace_first: 'Vickers, D. J.', '<b>Vickers, D. J.</b>' | replace_first: 'Prathi, T.', '<b>Prathi, T.</b>' | replace_first: 'Adam, D.', '<b>Adam, D.</b>' | replace_first: 'Yu, H.', '<b>Yu, H.</b>'}}</div>
5546

47+
<div style="margin-top:4px;">
5648
{% assign bibtest = false %}
5749
{% if entry.file %}
5850
{% assign bibfile = "/papers/" | append: entry.file %}
@@ -64,65 +56,50 @@
6456
{% endif %}
6557

6658
{% if bibtest %}
67-
<a href="{{ site.url }}{{ site.baseurl }}/papers/{{ entry.file }}" target="_blank"><button class="btn btn-info btm-sm bib-btn">PDF</button></a>
59+
<a href="{{ site.url }}{{ site.baseurl }}/papers/{{ entry.file }}" target="_blank"><button class="btn btn-primary bib-btn">PDF</button></a>
6860
{% endif %}
6961

7062
{% if entry.doi %}
71-
<a href="{{ entry.doi | prepend: 'https://doi.org/' }}" target="_blank"><button class="btn btn-info btm-sm bib-btn">DOI</button></a>
63+
<a href="{{ entry.doi | prepend: 'https://doi.org/' }}" target="_blank"><button class="btn btn-info bib-btn">DOI</button></a>
7264
{% endif %}
7365

7466
{% if entry.link %}
75-
<a href="{{ entry.link }}" target="_blank"><button class="btn btn-info btm-sm bib-btn">DOI</button></a>
67+
<a href="{{ entry.link }}" target="_blank"><button class="btn btn-info bib-btn">DOI</button></a>
7668
{% endif %}
7769

78-
<!-- {% if entry.type == 'unpublished' and entry.arxiv %} -->
79-
<!-- <a href="{{ entry.arxiv | prepend: 'https://arxiv.org/abs/' }}" target="_blank"><button class="btn btn-info btm-sm bib-btn">ARXIV</button></a> -->
80-
<!-- {% endif %} -->
81-
82-
{% if entry.type == 'unpublished' or entry.type == 'article' or entry.type == 'thesis' or entry.type == 'inproceedings' or entry.type == 'proceedings' or entry.type == 'report' %}
83-
<button class="btn btn-info btm-sm bib-btn" onclick="toggleBibtex{{entry.key}}()">BIB</button>
84-
{% endif %}
70+
<button class="btn btn-info bib-btn" style="opacity:0.7;" onclick="toggleBibtex{{entry.key}}()">BIB</button>
8571

8672
{% if entry.abstract %}
87-
<button class="btn btn-info btm-sm bib-btn" onclick="toggleAbstract{{entry.key}}()">ABSTRACT</button>
73+
<button class="btn btn-info bib-btn" style="opacity:0.7;" onclick="toggleAbstract{{entry.key}}()">ABSTRACT</button>
8874
{% endif %}
75+
</div>
8976

9077
{% if entry.abstract %}
91-
<div id="a{{entry.key}}" style="display: none; background-color:black; border-radius:8px; padding:10px; margin-bottom:20px;">
78+
<div id="a{{entry.key}}" class="bib-panel" style="display:none;">
9279
<pre>{{ entry.bibtex | remove: "entry.abstract" }}</pre>
9380
</div>
9481
{% else %}
95-
<div id="a{{entry.key}}" style="display: none; background-color:black; border-radius:8px; padding:10px; margin-bottom:20px;">
82+
<div id="a{{entry.key}}" class="bib-panel" style="display:none;">
9683
<pre>{{ entry.bibtex }}</pre>
9784
</div>
9885
{% endif %}
9986

100-
<div id="b{{entry.key}}" style="display: none; background-color:black; border-radius:8px; padding:10px; margin-bottom:20px;">
87+
<div id="b{{entry.key}}" class="bib-panel" style="display:none;">
10188
<pre>{{entry.abstract}}</pre>
10289
</div>
103-
</div>
10490

91+
</div>
10592
</div>
10693
</div>
10794
{% endif %}
10895

10996
<script>
11097
function toggleBibtex{{entry.key}}(parameter) {
111-
var x= document.getElementById('a{{entry.key}}');
112-
if (x.style.display === 'none') {
113-
x.style.display = 'block';
114-
x.style.backgroundColor = '#141617';
115-
} else {
116-
x.style.display = 'none';
117-
}
98+
var x = document.getElementById('a{{entry.key}}');
99+
x.style.display = x.style.display === 'none' ? 'block' : 'none';
118100
}
119101
function toggleAbstract{{entry.key}}(parameter) {
120-
var x= document.getElementById('b{{entry.key}}');
121-
if (x.style.display === 'none') {
122-
x.style.display = 'block';
123-
x.style.backgroundColor = '#141617';
124-
} else {
125-
x.style.display = 'none';
126-
}
102+
var x = document.getElementById('b{{entry.key}}');
103+
x.style.display = x.style.display === 'none' ? 'block' : 'none';
127104
}
128105
</script>

_pages/home.md

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,23 @@ permalink: /
1010

1111
We're the **Computational Physics Group at Georgia Tech**. We build numerical methods, computational models, and <a href="{{ site.url }}{{ site.baseurl }}/software/" target="_blank" rel="noopener noreferrer">open-source software</a> for problems in defense, energy, and medicine — optimized for the world's largest supercomputers.
1212

13-
**Some of our research areas:**
14-
* Exascale CFD and multiphase flow
15-
* Numerical methods for shock-laden and compressible flows
16-
* Reacting flows and combustion
17-
* Cavitation, microfluidics, and soft material characterization
1813

19-
**Recent highlight:** In August 2025 we conducted the <a href='https://arxiv.org/abs/2505.07392' target='_blank' rel='noopener noreferrer'>largest-ever CFD simulation</a> (1 quadrillion DOFs) on OLCF Frontier and LLNL El Capitan — a 2025 <a href='https://en.wikipedia.org/wiki/Gordon_Bell_Prize' target='_blank' rel='noopener noreferrer'>Gordon Bell Prize</a> finalist.
14+
**Research areas:**
15+
<div class="research-chips" markdown="0">
16+
<span class="chip">Computational fluid dynamics</span>
17+
<span class="chip">Shock-laden flow</span>
18+
<span class="chip">Multi-phase flow</span>
19+
<span class="chip">Rheological materials</span>
20+
<span class="chip">Reacting flow</span>
21+
<span class="chip">High-performance computing</span>
22+
<span class="chip">Scientific computing</span>
23+
<span class="chip">Quantum computing</span>
24+
</div>
25+
26+
<div class="highlight-callout">
27+
<span class="highlight-label">2025 Gordon Bell Prize Finalist</span>
28+
In August 2025 we ran the <a href='https://arxiv.org/abs/2505.07392' target='_blank' rel='noopener noreferrer'>largest CFD simulation ever</a> — 1 quadrillion DOFs across 200 trillion grid points on OLCF Frontier and LLNL El Capitan.
29+
</div>
2030

2131
Check out [our papers]({{ site.url }}{{ site.baseurl }}/papers/) to learn more.
2232

@@ -51,7 +61,7 @@ We're always looking for new Ph.D. and undergraduate students who like building
5161
* Strong coding + numerics background is a plus
5262
* Projects span exascale CFD, cavitation, microfluidics, and more
5363

54-
👉 Visit the <a href="{{ site.url }}{{ site.baseurl }}/vacancies.html">Vacancies</a> page for detailed instructions.<br/>
64+
Visit the <a href="{{ site.url }}{{ site.baseurl }}/vacancies.html">Vacancies</a> page for detailed instructions.<br/>
5565
<br/>
5666
<strong>What strong applicants usually have:</strong> Experience with C/C++/Fortran, numerical methods, and HPC. Familiarity with CFD, continuum mechanics, or scientific computing is helpful but not required.
5767
</div>
@@ -65,24 +75,24 @@ We're always looking for new Ph.D. and undergraduate students who like building
6575
<br/>
6676
<b>Exascale multiphase flow</b>: Scale-resolving simulation of a multi-rocket-booster configuration via <a href="https://mflowcode.github.io/" target="_blank" rel="noopener noreferrer">MFC</a> and information geometric regularization (IGR), developed with Florian Schäfer. Record-setting at <a href="https://arxiv.org/abs/2505.07392" target="_blank" rel="noopener noreferrer">1 quadrillion DOFs (200T grid points)</a> on <a href="https://www.olcf.ornl.gov/frontier/" target="_blank" rel="noopener noreferrer">OLCF Frontier</a> (viz. via Ph.D. student Ben Wilfong).
6777

68-
<div style="background-color: #252829; padding: 20px; border-left: 4px solid #c0995e; margin: 22px 0;">
78+
<div class="callout-box">
6979
<strong>Interested in using MFC?</strong><br/>
7080
MFC is our flagship open-source solver for compressible multiphase flow at exascale.<br/>
7181
• GPU-optimized for AMD and NVIDIA<br/>
7282
• Validated on rocket, cavitation, and bubbly-flow problems<br/>
7383
• Actively maintained and used on OLCF Frontier and LLNL El Capitan<br/>
7484
<br/>
75-
👉 Visit the <a href="https://mflowcode.github.io/" target="_blank" rel="noopener noreferrer">MFC website</a> or the <a href="https://github.com/MFlowCode/MFC" target="_blank" rel="noopener noreferrer">GitHub repo</a> to get started.
85+
Visit the <a href="https://mflowcode.github.io/" target="_blank" rel="noopener noreferrer">MFC website</a> or the <a href="https://github.com/MFlowCode/MFC" target="_blank" rel="noopener noreferrer">GitHub repo</a> to get started.
7686
</div>
7787

7888
<div style="text-align: center; margin: 20px 0;" markdown="0">
79-
<a href="https://mflowcode.github.io/" target="_blank" rel="noopener noreferrer" class="btn btn-primary">🌐 MFC Website</a>
89+
<a href="https://mflowcode.github.io/" target="_blank" rel="noopener noreferrer" class="btn btn-primary">MFC Website</a>
8090
<a href="https://github.com/MFlowCode/MFC" target="_blank" rel="noopener noreferrer" class="btn btn-primary"><i class="fab fa-github"></i> GitHub</a>
8191
<a href="https://join.slack.com/t/mflowcode/shared_invite/zt-y75wibvk-g~zztjknjYkK1hFgCuJxVw" target="_blank" rel="noopener noreferrer" class="btn btn-primary"><i class="fab fa-slack"></i> Slack</a>
8292
{% include mfc_cite_dropdown.html id="Home" external=true %}
8393
</div>
8494

85-
<div style="margin-top: 10px; display: flex; gap: 10px; align-items: center; flex-wrap: wrap; justify-content: center;">
95+
<div class="badge-row">
8696
<a href="https://github.com/MFlowCode/MFC/stargazers" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/github/stars/MFlowCode/MFC?style=social" alt="GitHub stars"/></a>
8797
<a href="https://github.com/MFlowCode/MFC/releases/latest" target="_blank" rel="noopener noreferrer"><img src="https://img.shields.io/github/v/release/MFlowCode/MFC" alt="Latest release"/></a>
8898
</div>
@@ -100,7 +110,7 @@ Many of the techniques used in our record-setting rocket simulations are availab
100110
<h2>News</h2>
101111
{% for article in site.data.news limit:10%}
102112
<p>
103-
<strong style="color: #c0995e;">{{ article.display_date | default: article.date }}</strong>
113+
<span class="news-date">{{ article.display_date | default: article.date }}</span>
104114
<br/>
105115
{{ article.headline }}
106116
</p>

_pages/papers.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ years: [2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026]
1919
## Archival Publications
2020

2121

22-
<div class="jumbotron" style="padding-left:0px">
23-
{% bibliography --query @unpublished %}
24-
{% bibliography --query @article,@inproceedings,@report %}
22+
<div class="jumbotron">
23+
{% bibliography --group_by year --group_order descending %}
2524
</div>

0 commit comments

Comments
 (0)