#2627: Tmunu inherits from ADMBase and StaticConformal without using them
| Reporter: | Gabriele Bozzola |
| Status: | new |
| Milestone: | |
| Version: | |
| Type: | bug |
| Priority: | trivial |
| Component: |
Comment (by Roland Haas):
Historic leftover and backwards compatible thing I would say.
The old Tmunu mechanism (using the FRIEND mechanism) had a routine TmunuBase_SetTmunu that used ADMCoupling's STRESSENERGY_guts.h macros, which may have conceivably used ADMBase variables (at least that is my only guess). Or it may have been superfluous when the thorn was first created in 2009. The old Tmunu code was removed in git hash 5a412c0 "TmunuBase: remove deprecated support for old CalcTmunu mechanism" of einsteinbase.
Right now removing it may be dicey since inheritance is transitive, that is thorns inheriting from TmunuBase get access to all the grid functions that TmunuBase inherited. There is bound to be a thorn out there that only inherits from TmunuBase but still accesses ADMBase variables (valid code in fact).
This is probably a good candidate for a deprecated features announcement. While I doubt there are Tmunu using thorns that do not also use ADMBase there is a case to be made for no longer requiring StaticConformal in particular since support for conformaly related metrics is essentially non-existent in current codes.
--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2627/tmunu-inherits-from-admbase-and