fargOCA issueshttps://gitlab.oca.eu/DISC/fargOCA/-/issues2022-05-19T09:26:13Zhttps://gitlab.oca.eu/DISC/fargOCA/-/issues/655Why 2 time steps when we ask 12022-05-19T09:26:13ZAlain O' MiniussiWhy 2 time steps when we ask 1Hackathonhttps://gitlab.oca.eu/DISC/fargOCA/-/issues/654allow Kokkos vs MPI initialiation order selection2022-05-19T08:52:11ZAlain O' Miniussiallow Kokkos vs MPI initialiation order selectionHackathonhttps://gitlab.oca.eu/DISC/fargOCA/-/issues/651optimize add_rotation2022-06-16T13:45:01ZAlain O' Miniussioptimize add_rotationin `TransportImpl::addRotation`, we can optimize the rotation be nting that each ring is "shifted". That could avoid us a copy in a temporary.in `TransportImpl::addRotation`, we can optimize the rotation be nting that each ring is "shifted". That could avoid us a copy in a temporary.Hackathonhttps://gitlab.oca.eu/DISC/fargOCA/-/issues/649loop improvment in viscosity2022-05-18T13:00:14ZAlain O' Miniussiloop improvment in viscosityHackathonhttps://gitlab.oca.eu/DISC/fargOCA/-/issues/648Checkfor missing barrier2022-05-17T12:03:42ZAlain O' MiniussiCheckfor missing barrierSpecialy in Kokkos kernel using once.Specialy in Kokkos kernel using once.Hackathonhttps://gitlab.oca.eu/DISC/fargOCA/-/issues/647Add profiling runs in git2022-05-17T12:02:47ZAlain O' MiniussiAdd profiling runs in git
runMPI.sh.in look alike, but with configurable dimensions
runMPI.sh.in look alike, but with configurable dimensionsHackathonhttps://gitlab.oca.eu/DISC/fargOCA/-/issues/635Disk evaporation2022-06-16T15:05:27ZElena LegaDisk evaporationFor the PhD project of @pgriveaud we have Jupiter and Saturn in resonant configurations. We want to
simulate the final phases of the disk introducing a simple evaporation recipe at time $`t_0`$:
$`\rho (t) = \rho_0 exp(t-t0)/T`$
with $...For the PhD project of @pgriveaud we have Jupiter and Saturn in resonant configurations. We want to
simulate the final phases of the disk introducing a simple evaporation recipe at time $`t_0`$:
$`\rho (t) = \rho_0 exp(t-t0)/T`$
with $`T`$ a parameter of the order 100 orbits giving the "evaporation time scale".
The prescription is very simple and does not want to mimic the complicate disk evaporation, the idea is only to remove
smoothly the gas , i.e. the effect of the disk potential on the planets, in order to have planetary orbits that can be
used as initial condition for the dynamical phase after disk dispersal.Release 0.9Elena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/620Adding radiative energy transport2022-02-15T18:47:46ZElena LegaAdding radiative energy transportOn last December with @fmasset we went through the derivation of the energy equations
quite in detail.
Our conclusion is that the way we treat internal and radiative energy is ok a part one point to be tested.
Up to now we have neglec...On last December with @fmasset we went through the derivation of the energy equations
quite in detail.
Our conclusion is that the way we treat internal and radiative energy is ok a part one point to be tested.
Up to now we have neglected the advection of the radiative energy.
However, this term appears in the orginal derivation of the equation for the temporal evolution of
the radiative energy by Mihalas and Mihalas (Foundations of Radiation Hydrodynamics) and its importance
is stated in the paper "Monte-Carlo Radiation Hydrodinamics with implicit methods" (Roth, Kasen 2014).
In this paper it is shown that even for fluid speed v<<<<c radiation advection is required to correctly transport
the energy.Release 0.9Elena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/596Implicit and explicit (Super Time Stepping) solvers for diffusion equation in...2022-01-18T15:50:14ZElena LegaImplicit and explicit (Super Time Stepping) solvers for diffusion equation in Energy StepIn order to solve the Energy Step corresponding to the radiative diffusion we use an implicit solver (sor).
The reason is that, as it is well known, the numerical solution of the diffusion equation obtained
via explicit algorithm is ...In order to solve the Energy Step corresponding to the radiative diffusion we use an implicit solver (sor).
The reason is that, as it is well known, the numerical solution of the diffusion equation obtained
via explicit algorithm is numerically unstable for time-step larger than:
$`\Delta t_p = {{ C_p }\over {max({{\Chi_x} \over {\Delta x^2}} + {{\Chi_y}\over {\Delta y^2}} + {{\Chi_z}\over {\Delta z^2}})}}`$
where $`C_p<0.5`$ is the parabolic courant number and $`\Chi_x`$, $`\Chi_y`$ and $`\Chi_z`$ are the thermal diffusivities in units $`[L^2]/[T]`$.
We recall that in the code the hydro time-step computed via the CFL condition scales linearly with the grid resolution ($`\Delta x`$, $`\Delta y`$ and $`\Delta z`$); therefore for large grid resolution and/or thermal diffusivities, $`\Delta t_p`$ is much shorter than the hydro time step and the explicit method is very inefficient.
The implicit solution has the great advantage of being unconditionally stable (one may loose precision of the solution but not the stability for large time-steps). The great disadvantage is that implicit algorithm are based on iterative solutions and is not solvable in parallel in a scalable way.
There exists an alternative method, which is explicit and allows to use a time-step $`\tau`$ larger than $`\Delta t_p`$ iterating over a small number $`s`$ of sub steps of length $`\Delta t_j`$ such that:
$`\tau = \sum _{i=1}^{s} \Delta t_j.`$
This is obtained requiring that the solution is stable on
$`\tau`$ and not on each $`\Delta t_j`$. The method is called super-time stepping (Alexiades,Amiez,Gremaud 1995).
The solution at intermediate steps $`\Delta t_j`$ is obtained either via Tchebychev or Legendre polynômes. An example for $s=3$ is given in [Mignone et al. 2017](https://arxiv.org/pdf/1702.05487.pdf)
For our code fargOCA the interest of the super time stepping is twofold:
1) explicit method are easy to parallelize: we would really benefit of high degree of parallelization in this phase in which we are moving the code on Kokkos (practically finished by @alainm) in order to use GPUs and future accelerators. We stress the fact that new machines coming on the national panorama are based on GPUs.
2) we need to solve th diffusion equation faster for all the projects involving fully radiative model like for example the "inflow" case that we are studying with @morbyRelease 0.9Elena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/573Remove opm pragmas2021-09-10T09:54:50ZAlain O' MiniussiRemove opm pragmasAnd replace them with lambda kokkos loops.
This is a sub ticket of #569And replace them with lambda kokkos loops.
This is a sub ticket of #569KokkosAlain O' MiniussiAlain O' Miniussihttps://gitlab.oca.eu/DISC/fargOCA/-/issues/544Viscosity alpha specification2022-06-29T16:31:11ZAlain O' MiniussiViscosity alpha specificationAs discussed in #524
In this boundary condition @morby we would like to change the vector alpha (viscosity.value in VT_ALPHA) with time with something like:
$`\alpha(Rmed[i]) = (\alpha_M-\alpha_m)*\exp(-t/T)+\alpha_m`$
this is not p...As discussed in #524
In this boundary condition @morby we would like to change the vector alpha (viscosity.value in VT_ALPHA) with time with something like:
$`\alpha(Rmed[i]) = (\alpha_M-\alpha_m)*\exp(-t/T)+\alpha_m`$
this is not possible at the moment since alpha is defined as const
```
reals const& alpha = disk.physic().viscosity.alpha();
```
I think that the way to do is to introduce another viscosity type,
and provide $`\alpha_M`$ and $`\alpha_m`$ as parameters.
The reason is that we will also have to change the vector alpha as a function of the evolution with time of the disk temperature and density.
Therefore, we will need also to change the call to the viscosity field.
But may be there is a better way to do.
@alainm : what do you suggest ?Viscosity ReorganisationAlain O' MiniussiAlain O' Miniussihttps://gitlab.oca.eu/DISC/fargOCA/-/issues/521Missing example documentation2021-09-15T15:42:33ZAlain O' MiniussiMissing example documentation@elena I put the new examples here so that we keep track. Maybe you want to do a ticket per example
* https://gitlab.oca.eu/DISC/fargOCA/-/wikis/Examples/2D-Isothermal-Disk-With-2-Planets
* https://gitlab.oca.eu/DISC/fargOCA/-/wikis/E...@elena I put the new examples here so that we keep track. Maybe you want to do a ticket per example
* https://gitlab.oca.eu/DISC/fargOCA/-/wikis/Examples/2D-Isothermal-Disk-With-2-Planets
* https://gitlab.oca.eu/DISC/fargOCA/-/wikis/Examples/2D-Cavity
* https://gitlab.oca.eu/DISC/fargOCA/-/wikis/Examples/2D-Taper
* https://gitlab.oca.eu/DISC/fargOCA/-/wikis/Examples/3D-Isothermal-Disk
* https://gitlab.oca.eu/DISC/fargOCA/-/wikis/Examples/3D-Isothermal-Accretion
* https://gitlab.oca.eu/DISC/fargOCA/-/wikis/Examples/3D-Heating-Torque-Restart
You might want to have a look at th e[2D isothermal 2 planets](https://gitlab.oca.eu/DISC/fargOCA/-/wikis/Examples/2D%20Isothermal%20Disk%20With%202%20Planets) example which conains the link to its config file doc pdf.Release 0.9Elena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/474Planet Trap on 2D version2022-03-28T15:26:30ZElena LegaPlanet Trap on 2D versionThis is a research project by @gpichier and @bbitsch ,
few words of description below, sorry for the italian, Alain knows italian and I guess Bert did a lot of progress ...
La planet trap si basa su Flock et al. 2019 (https://ui.adsabs...This is a research project by @gpichier and @bbitsch ,
few words of description below, sorry for the italian, Alain knows italian and I guess Bert did a lot of progress ...
La planet trap si basa su Flock et al. 2019 (https://ui.adsabs.harvard.edu/abs/2019A%26A...630A.147F/abstract).
L'idea è di usare una transizione della viscosità al bordo interno del disco dove si passa dalla zona attiva in MRI alla dead zone, implementando la formula (3) di Flock et al. 2019. Su Fargo2D1D avevo modificato le funzioni Viscosity.c e Viscosity1D.c, e invece di usare una viscosità costante implementavo quella formula. Localmente funzionava molto bene, c'era una bella planet trap. Il problema era invece al bordo tra le griglie 1D e 2D, motivo per cui vogliamo passare a fargOCA. Inoltre ho l'impressione che con fargOCA sarà più naturale inserire tutti i parametri della viscosity transition nel file *.conf, il che rende il tutto molto più coerente con il resto del codice.Viscosity ReorganisationElena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/394Use case for restart after stabilization2019-12-01T18:32:12ZAlain O' MiniussiUse case for restart after stabilizationA place holder for use cases has been put in the [wiki](https://gitlab.oca.eu/DISC/fargOCA/wikis/User's-Guide/Use%20Cases).
As mentioned in #392, it might be a good thing to show a step by step use case ?
Plus it would validate that no...A place holder for use cases has been put in the [wiki](https://gitlab.oca.eu/DISC/fargOCA/wikis/User's-Guide/Use%20Cases).
As mentioned in #392, it might be a good thing to show a step by step use case ?
Plus it would validate that nothing is missing feature wise for that scenario.
@elena @astr-mle does anyone wants to give it a try ?Examples Dochttps://gitlab.oca.eu/DISC/fargOCA/-/issues/3603D stellar radiation example doc2019-09-18T14:25:32ZAlain O' Miniussi3D stellar radiation example docIn [Examples/3D-Stellar-Radiation-Disk](/../wikis/Examples/3D-Stellar-Radiation-Disk)In [Examples/3D-Stellar-Radiation-Disk](/../wikis/Examples/3D-Stellar-Radiation-Disk)Examples DocElena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/3593D Radiative Disk2019-09-18T14:19:35ZAlain O' Miniussi3D Radiative Disk[Examples/3D Radiative Disk](/../wikkis/Examples/3D Radiative Disk)[Examples/3D Radiative Disk](/../wikkis/Examples/3D Radiative Disk)Examples DocElena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/358Examples/3D Radiative Disk Restart2019-09-11T21:22:19ZAlain O' MiniussiExamples/3D Radiative Disk Restart[Examples/3D Radiative Disk Restart](/../wikkis/Examples/3D Radiative Disk Restart)[Examples/3D Radiative Disk Restart](/../wikkis/Examples/3D Radiative Disk Restart)Examples DocElena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/3573D Accreting By Wind example doc2019-09-11T21:17:34ZAlain O' Miniussi3D Accreting By Wind example doc[/../wikis/Examples/3D Accreting By Wind][/../wikis/Examples/3D Accreting By Wind]Examples DocElena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/3553D unperturbed disk example doc2019-09-11T20:56:23ZAlain O' Miniussi3D unperturbed disk example doc[/wikis/Examples/2D-Isothermal-Disk](/wikis/Examples/2D-Isothermal-Disk)[/wikis/Examples/2D-Isothermal-Disk](/wikis/Examples/2D-Isothermal-Disk)Examples DocElena LegaElena Legahttps://gitlab.oca.eu/DISC/fargOCA/-/issues/3542D Isothermal Disk documentation2019-09-11T20:50:04ZAlain O' Miniussi2D Isothermal Disk documentationI starting the example doc wiki structure with the place holers to fill:
[/wikis/Examples/2D-Isothermal-Disk](/wikis/Examples/2D-Isothermal-Disk)I starting the example doc wiki structure with the place holers to fill:
[/wikis/Examples/2D-Isothermal-Disk](/wikis/Examples/2D-Isothermal-Disk)Examples DocElena LegaElena Lega