code: def needs_remesh(self):
          
          # TODO: may be able to get away with removing the features check and just doing for pulsations, etc?
          # TODO: what about dpdt, deccdt, dincldt, etc?
          return len(self.features) > 0 or self.is_misaligned or self.ecc != 0 or self.dynamics_method != 'keplerian'
docs: whether the star needs to be re-meshed (for any reason)