hombit / freddi Goto Github PK
View Code? Open in Web Editor NEWCompute FRED light curves of LMXBs outbursts
Home Page: http://freddi.homb.it
Compute FRED light curves of LMXBs outbursts
Home Page: http://freddi.homb.it
Replace glob with hardcoded file list in CMakeLists.txt, glob causes problems with various temporary files which could be located in the source directory
Apparently, in all files with output data, the time is shifted by the value of tau (time step). That is, output time t=0 corresponds to real time t = tau, t=tau corresponds to t = 2*tau, and so forth.
Add an option to define nu, at which the spectral flux density is calculated
It looks like --irrindexcold
doesn't make sense if this --h2rcold
will be used. Should we remove --irrindexcold
and generalise --h2rcold
somehow?
For initialcond=gaussF add parameter BASE for a constant base As follows
In arguments.cpp
vecd DiskStructureArguments::InitialFGaussF::operator()(const vecd& h) const {
vecd F(h.size());
for (size_t i = 0; i < h.size(); ++i) {
const double xi = (h[i] - h.front()) / (h.back() - h.front());
F[i] = F0 * (BASE + std::exp(-m::pow<2>(xi - gaussmu) / (2. * m::pow<2>(gausssigma))));
}
return F;
}
For example, BASE = 1e-30 resolves nan Mdot values at the beginning of an outburst at a price of .00001 relative difference in Mdot(t) at the peak maximum.
Does it work?
Output F as 2pi Wrphi r^2 and Sigma as total surface density
When the cooling front hits a critical radius, the code aborts. Can it be done in a more civilized way?
Magnitude columns are confusing because of wild range of photometric systems. Remove these columns and add example passband files instead
Improve nonlinear_diffusion
or just throw detailed exception when initial condition is too steep.
Example of steep distribution is --initialcond=powerSigma --powerorder=6
Make more detailed exception when Nx
falls to 0
Sometimes, non-defaults values of the arguments are better to be stored in the configuration file. Make Freddi take arguments from a file.
freddi/cpp/include/freddi_evolution.hpp
Lines 15 to 16 in 66559fa
D.13 [depr.iterator.primitives]: “warning STL4015: The std::iterator class template (used as a base class to provide typedefs) is deprecated in C++17. (The header is NOT deprecated.) The C++ Standard has never required user-defined iterators to derive from std::iterator. To fix this warning, stop deriving from std::iterator and start providing publicly accessible typedefs named iterator_category, value_type, difference_type, pointer, and reference. Note that value_type is required to be non-const, even for constant iterators. You can define _SILENCE_CXX17_ITERATOR_BASE_CLASS_DEPRECATION_WARNING or _SILENCE_ALL_CXX17_DEPRECATION_WARNINGS to acknowledge that you have received this warning.”
https://devblogs.microsoft.com/cppblog/c17-feature-removals-and-deprecations/
Make it possible to output data on less dense grid than used internally, ie output each k
th time moment only
Currently, the tau parameter (time step in days) is not stored in the header of a dat file, unless it was explicitly declared in the command line or in a configuration file. It is better that tau is written to the header anyway. The difference between adjacent t in the first column of a dat-file is not necessarily equal to tau, since there is also a parameter that controls whether the model is displayed at each time step or not
Wind must exist for super-Eddington region only Mdot(r) >= Mdot_edd(r)
It is needed because it does not appear by default in "freddi.ini". It is calculated as Rtid and is shown only in the standard output.
May be it is possible for the code to choose appropriate d_r in order to achieve desired accuracy when d_tau is set by user and if the user does not set d_r explicitly.
.
Use $XDG_CONFIG_HOME instead of $HOME
Now for the first step we output full radius of the disc, pls output actual hot radius
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.