You should evaluate the logp on the transformed space, first cache the logp: logp_func = [var.logp for var in m.free_RVs], and in the for loop of the trace, run another for loop of the logp_func and evaluate the point of each free_RVs
You should evaluate the logp on the transformed space, first cache the logp: logp_func = [var.logp for var in m.free_RVs], and in the for loop of the trace, run another for loop of the logp_func and evaluate the point of each free_RVs