<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_rprof(step, var):
 """Extract or compute and rescale requested radial profile. Args: step (:class:`~stagpy.stagyydata._Step`):
 a step of a StagyyData instance. var (str):
 radial profile name, a key of :data:`stagpy.phyvars.RPROF` or :data:`stagpy.phyvars.RPROF_EXTRA`. Returns: tuple of :class:`numpy.array` and :class:`stagpy.phyvars.Varr`: rprof, rad, meta rprof is the requested profile, rad the radial position at which it is evaluated (set to None if it is the position of profiles output by StagYY), and meta is a :class:`stagpy.phyvars.Varr` instance holding metadata of the requested variable. """

    if var in step.rprof.columns:
        rprof = step.rprof[var]
        rad = None
        if var in phyvars.RPROF:
            meta = phyvars.RPROF[var]
        else:
            meta = phyvars.Varr(var, None, '1')
    elif var in phyvars.RPROF_EXTRA:
        meta = phyvars.RPROF_EXTRA[var]
        rprof, rad = meta.description(step)
        meta = phyvars.Varr(misc.baredoc(meta.description),
                            meta.kind, meta.dim)
    else:
        raise UnknownRprofVarError(var)
    rprof, _ = step.sdat.scale(rprof, meta.dim)
    if rad is not None:
        rad, _ = step.sdat.scale(rad, 'm')

    return rprof, rad, meta