simulations:\n",
" - name: startupCouette\n",
" save_path: ./tests/validation/results/01_couette_flow/startup_couette\n",
"\n",
" n_steps: 4000\n",
"\n",
" report:\n",
" frequency: 500\n",
"\n",
" domain:\n",
" domain_size:\n",
" x: 32\n",
" y: 32\n",
" block_size: 8\n",
"\n",
" data:\n",
" monitors:\n",
" fields:\n",
" macrs_stats:\n",
" macrs: [rho, u]\n",
" stats: [min, max, mean, pos]\n",
" interval: { frequency: 100 }\n",
" divergence: { frequency: 50 }\n",
" instantaneous:\n",
" default: { interval: { frequency: 80 }, macrs: [rho, u] }\n",
" statistics:\n",
" interval: { frequency: 0 }\n",
" probes:\n",
" historic_series:\n",
" default:\n",
" interval: { frequency: 80, lvl: 0 }\n",
" macrs: [rho, u]\n",
" lines:\n",
" velocity_profile:\n",
" dist: 1\n",
" start_pos: [4, 0]\n",
" end_pos: [4, 32]\n",
"\n",
" models:\n",
" precision:\n",
" default: single\n",
"\n",
" LBM:\n",
" tau: 0.9\n",
" vel_set: D2Q9\n",
" coll_oper: RRBGK\n",
"\n",
" engine:\n",
" name: CUDA\n",
"\n",
" BC:\n",
" periodic_dims: [true, false]\n",
" BC_map:\n",
" - pos: N\n",
" BC: VelocityBounceBack\n",
" wall_normal: N\n",
" ux: 2e-3\n",
" uy: 0\n",
"\n",
" - pos: S\n",
" BC: VelocityBounceBack\n",
" wall_normal: S\n",
" ux: 0\n",
" uy: 0\n",
" \n"
],
"text/latex": [
"\\begin{Verbatim}[commandchars=\\\\\\{\\}]\n",
"\\PY{n+nt}{simulations}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZhy{}}\\PY{+w}{ }\\PY{n+nt}{name}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{startupCouette}\n",
"\\PY{+w}{ }\\PY{n+nt}{save\\PYZus{}path}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{./tests/validation/results/01\\PYZus{}couette\\PYZus{}flow/startup\\PYZus{}couette}\n",
"\n",
"\\PY{+w}{ }\\PY{n+nt}{n\\PYZus{}steps}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{4000}\n",
"\n",
"\\PY{+w}{ }\\PY{n+nt}{report}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{frequency}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{500}\n",
"\n",
"\\PY{+w}{ }\\PY{n+nt}{domain}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{domain\\PYZus{}size}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{x}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{32}\n",
"\\PY{+w}{ }\\PY{n+nt}{y}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{32}\n",
"\\PY{+w}{ }\\PY{n+nt}{block\\PYZus{}size}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{8}\n",
"\n",
"\\PY{+w}{ }\\PY{n+nt}{data}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{monitors}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{fields}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{macrs\\PYZus{}stats}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{macrs}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{[}\\PY{n+nv}{rho}\\PY{p+pIndicator}{,}\\PY{+w}{ }\\PY{n+nv}{u}\\PY{p+pIndicator}{]}\n",
"\\PY{+w}{ }\\PY{n+nt}{stats}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{[}\\PY{n+nv}{min}\\PY{p+pIndicator}{,}\\PY{+w}{ }\\PY{n+nv}{max}\\PY{p+pIndicator}{,}\\PY{+w}{ }\\PY{n+nv}{mean}\\PY{p+pIndicator}{,}\\PY{+w}{ }\\PY{n+nv}{pos}\\PY{p+pIndicator}{]}\n",
"\\PY{+w}{ }\\PY{n+nt}{interval}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZob{}}\\PY{n+nt}{ frequency}\\PY{p}{:}\\PY{+w}{ }\\PY{n+nv}{100}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZcb{}}\n",
"\\PY{+w}{ }\\PY{n+nt}{divergence}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZob{}}\\PY{n+nt}{ frequency}\\PY{p}{:}\\PY{+w}{ }\\PY{n+nv}{50}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZcb{}}\n",
"\\PY{+w}{ }\\PY{n+nt}{instantaneous}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{default}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZob{}}\\PY{n+nt}{ interval}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZob{}}\\PY{n+nt}{ frequency}\\PY{p}{:}\\PY{+w}{ }\\PY{n+nv}{80}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZcb{}}\\PY{p+pIndicator}{,}\\PY{n+nt}{ macrs}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{[}\\PY{n+nv}{rho}\\PY{p+pIndicator}{,}\\PY{+w}{ }\\PY{n+nv}{u}\\PY{p+pIndicator}{]}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZcb{}}\n",
"\\PY{+w}{ }\\PY{n+nt}{statistics}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{interval}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZob{}}\\PY{n+nt}{ frequency}\\PY{p}{:}\\PY{+w}{ }\\PY{n+nv}{0}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZcb{}}\n",
"\\PY{+w}{ }\\PY{n+nt}{probes}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{historic\\PYZus{}series}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{default}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{interval}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZob{}}\\PY{n+nt}{ frequency}\\PY{p}{:}\\PY{+w}{ }\\PY{n+nv}{80}\\PY{p+pIndicator}{,}\\PY{n+nt}{ lvl}\\PY{p}{:}\\PY{+w}{ }\\PY{n+nv}{0}\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZcb{}}\n",
"\\PY{+w}{ }\\PY{n+nt}{macrs}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{[}\\PY{n+nv}{rho}\\PY{p+pIndicator}{,}\\PY{+w}{ }\\PY{n+nv}{u}\\PY{p+pIndicator}{]}\n",
"\\PY{+w}{ }\\PY{n+nt}{lines}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{velocity\\PYZus{}profile}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{dist}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{1}\n",
"\\PY{+w}{ }\\PY{n+nt}{start\\PYZus{}pos}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{[}\\PY{n+nv}{4}\\PY{p+pIndicator}{,}\\PY{+w}{ }\\PY{n+nv}{0}\\PY{p+pIndicator}{]}\n",
"\\PY{+w}{ }\\PY{n+nt}{end\\PYZus{}pos}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{[}\\PY{n+nv}{4}\\PY{p+pIndicator}{,}\\PY{+w}{ }\\PY{n+nv}{32}\\PY{p+pIndicator}{]}\n",
"\n",
"\\PY{+w}{ }\\PY{n+nt}{models}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{precision}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{default}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{single}\n",
"\n",
"\\PY{+w}{ }\\PY{n+nt}{LBM}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{tau}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{0.9}\n",
"\\PY{+w}{ }\\PY{n+nt}{vel\\PYZus{}set}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{D2Q9}\n",
"\\PY{+w}{ }\\PY{n+nt}{coll\\PYZus{}oper}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{RRBGK}\n",
"\n",
"\\PY{+w}{ }\\PY{n+nt}{engine}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{name}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{CUDA}\n",
"\n",
"\\PY{+w}{ }\\PY{n+nt}{BC}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{n+nt}{periodic\\PYZus{}dims}\\PY{p}{:}\\PY{+w}{ }\\PY{p+pIndicator}{[}\\PY{n+nv}{true}\\PY{p+pIndicator}{,}\\PY{+w}{ }\\PY{n+nv}{false}\\PY{p+pIndicator}{]}\n",
"\\PY{+w}{ }\\PY{n+nt}{BC\\PYZus{}map}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZhy{}}\\PY{+w}{ }\\PY{n+nt}{pos}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{N}\n",
"\\PY{+w}{ }\\PY{n+nt}{BC}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{VelocityBounceBack}\n",
"\\PY{+w}{ }\\PY{n+nt}{wall\\PYZus{}normal}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{N}\n",
"\\PY{+w}{ }\\PY{n+nt}{ux}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{2e\\PYZhy{}3}\n",
"\\PY{+w}{ }\\PY{n+nt}{uy}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{0}\n",
"\n",
"\\PY{+w}{ }\\PY{p+pIndicator}{\\PYZhy{}}\\PY{+w}{ }\\PY{n+nt}{pos}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{S}\n",
"\\PY{+w}{ }\\PY{n+nt}{BC}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{VelocityBounceBack}\n",
"\\PY{+w}{ }\\PY{n+nt}{wall\\PYZus{}normal}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{S}\n",
"\\PY{+w}{ }\\PY{n+nt}{ux}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{0}\n",
"\\PY{+w}{ }\\PY{n+nt}{uy}\\PY{p}{:}\\PY{+w}{ }\\PY{l+lScalar+lScalarPlain}{0}\n",
"\\end{Verbatim}\n"
],
"text/plain": [
"simulations:\n",
" - name: startupCouette\n",
" save_path: ./tests/validation/results/01_couette_flow/startup_couette\n",
"\n",
" n_steps: 4000\n",
"\n",
" report:\n",
" frequency: 500\n",
"\n",
" domain:\n",
" domain_size:\n",
" x: 32\n",
" y: 32\n",
" block_size: 8\n",
"\n",
" data:\n",
" monitors:\n",
" fields:\n",
" macrs_stats:\n",
" macrs: [rho, u]\n",
" stats: [min, max, mean, pos]\n",
" interval: { frequency: 100 }\n",
" divergence: { frequency: 50 }\n",
" instantaneous:\n",
" default: { interval: { frequency: 80 }, macrs: [rho, u] }\n",
" statistics:\n",
" interval: { frequency: 0 }\n",
" probes:\n",
" historic_series:\n",
" default:\n",
" interval: { frequency: 80, lvl: 0 }\n",
" macrs: [rho, u]\n",
" lines:\n",
" velocity_profile:\n",
" dist: 1\n",
" start_pos: [4, 0]\n",
" end_pos: [4, 32]\n",
"\n",
" models:\n",
" precision:\n",
" default: single\n",
"\n",
" LBM:\n",
" tau: 0.9\n",
" vel_set: D2Q9\n",
" coll_oper: RRBGK\n",
"\n",
" engine:\n",
" name: CUDA\n",
"\n",
" BC:\n",
" periodic_dims: [true, false]\n",
" BC_map:\n",
" - pos: N\n",
" BC: VelocityBounceBack\n",
" wall_normal: N\n",
" ux: 2e-3\n",
" uy: 0\n",
"\n",
" - pos: S\n",
" BC: VelocityBounceBack\n",
" wall_normal: S\n",
" ux: 0\n",
" uy: 0"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from IPython.display import Code\n",
"\n",
"Code(filename=filename)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "nassu",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.10"
},
"orig_nbformat": 4
},
"nbformat": 4,
"nbformat_minor": 2
}