Lothars Scratch: Difference between revisions
Jump to navigation
Jump to search
(Nmodes -> mode) |
(→lin_T-Grad: +UserDefBoundary) |
||
| Line 3: | Line 3: | ||
== lin_T-Grad == | == lin_T-Grad == | ||
=== init.c | === init.c === | ||
==== <code>InitDomain()</code> ==== | |||
* lineares \(T\)-Profil gemäß <code>IC_Temperature_X2BEG_K</code>><code> IC_Temperature_X2END_K</code> | * lineares \(T\)-Profil gemäß <code>IC_Temperature_X2BEG_K</code>><code> IC_Temperature_X2END_K</code> | ||
* ideales Gas: isotherme Kompressibilität = \(1/P \Rightarrow \tilde c^2=P/\rho=k_BT/m\) | * ideales Gas: isotherme Kompressibilität = \(1/P \Rightarrow \tilde c^2=P/\rho=k_BT/m\) | ||
| Line 10: | Line 11: | ||
* Dichteprofil aus \(\rho=P/\tilde c^2(T)\), beide Profile ggf. von unten gedeckelt durch <code>RHO_min</code> aus ''Restrictions.conf'' | * Dichteprofil aus \(\rho=P/\tilde c^2(T)\), beide Profile ggf. von unten gedeckelt durch <code>RHO_min</code> aus ''Restrictions.conf'' | ||
* \(v_y\) gestört durch Sinus mit Wellenlänge = Systembreite/<code>IC_Perturbation_mode</code> und Amplitude <code>IC_Perturbation_Amplitude_cs</code> × \(\exp(-\vert y_\text{rel}-1/2\vert)\) | * \(v_y\) gestört durch Sinus mit Wellenlänge = Systembreite/<code>IC_Perturbation_mode</code> und Amplitude <code>IC_Perturbation_Amplitude_cs</code> × \(\exp(-\vert y_\text{rel}-1/2\vert)\) | ||
==== <code>UserDefBoundary()</code> ==== | |||
am oberen Rand(<code>X2_END</code>): | |||
* BC_Outflow_NoInflow für \(v_y\) und \(\rho \Rightarrow\) BC_ZeroGradient für \(P\) | |||
* BC_ZeroGradient für \(v_x\) (und \(v_z\)) | |||
=== pluto.ini === | === pluto.ini === | ||
Revision as of 18:27, 14 January 2026
Alexanders Setups
lin_T-Grad
init.c
InitDomain()
- lineares \(T\)-Profil gemäß
IC_Temperature_X2BEG_K>IC_Temperature_X2END_K - ideales Gas: isotherme Kompressibilität = \(1/P \Rightarrow \tilde c^2=P/\rho=k_BT/m\)
- Druck-DGL \(-\partial_y p=-pg/\tilde c^2(T) \Rightarrow\) Druckprofil (numerisch) mit RB \(P(y_\text{min})=10^9\)bar
- Dichteprofil aus \(\rho=P/\tilde c^2(T)\), beide Profile ggf. von unten gedeckelt durch
RHO_minaus Restrictions.conf - \(v_y\) gestört durch Sinus mit Wellenlänge = Systembreite/
IC_Perturbation_modeund AmplitudeIC_Perturbation_Amplitude_cs× \(\exp(-\vert y_\text{rel}-1/2\vert)\)
UserDefBoundary()
am oberen Rand(X2_END):
- BC_Outflow_NoInflow für \(v_y\) und \(\rho \Rightarrow\) BC_ZeroGradient für \(P\)
- BC_ZeroGradient für \(v_x\) (und \(v_z\))
pluto.ini
- Grid = [0.0,0.1] x [1.0,1.1]
- Boundary = [periodic,periodic] x [reflective,userdef]
- Anfangswerte:
IC_Temperature_X2BEG_K 1e+6 IC_Temperature_X2END_K 1e+5 IC_Perturbation_mode +5.0 IC_Perturbation_Amplitude_cs +0.3
bodyforce.c
konstante Beschleunigung in \(-y\)-Richtung:
g[JDIR] = - G_GravityConstant * SolarMass / (SolarRadius*SolarRadius);
makefile_user_simulationdefs
DIMENSIONS = 2 GEOMETRY = CARTESIAN BODY_FORCE = VECTOR EOS = IDEAL
user_defined_parameters.h
UNIT_DENSITY (1e-0) UNIT_LENGTH (CONST_Rsun) UNIT_VELOCITY (CONST_Rsun * CONST_c / CONST_ly) IC_Temperature_X2BEG_K IC_Temperature_X2END_K IC_Perturbation_mode IC_Perturbation_Amplitude_cs