Las ecuaciones paramétricas son:

g[a_, b_, R_, r_][n_, m_, k_][u_, s_] :=
(alpha[a, b][n, m][u] + #1 & ) /@
(RR[be[n][u]][i[f[k][R, r][u, s]]] . base[n, m][u])

donde

alpha[a_, b_][n_, m_][u_] :=
{(a + b*Cos[n*u])*Cos[m*u], (a + b*Cos[n*u])*Sin[m*u], b*Sin[n*u]}

es un nudo torico de tipo (n,m)

RR[b_][{x_, y_}] := {x, y} . {{Cos[b], Sin[b]}, {-Sin[b], Cos[b]}}

be[n_][u_] := n*u

i[{a_, b_}] := {{a, b}, {-a, b}}

f[k_][R_, r_][t_, s_] :=
N[{Sqrt[(R + r*Cos[c[R, r][p[k, r][t]]*s])^2 - p[k, r][t]^2],
r*Sin[c[R, r][p[k, r][t]]*s]}]

c[R_, r_][p_] := If[p > R - r, ArcCos[(p - R)/r], Pi]

p[k_, r_][u_] := r*(1 + Cos[k*u])

base[n_, m_][u_] := {{Cos[m*u], Sin[m*u], 0}, {0, 0, 1}}
 

R[b_][{x_, y_}] := {x, y} . {{Cos[b], Sin[b]}, {-Sin[b], Cos[b]}}
 

Para realizar la figura en tres dimensiones utilizamos:

dib=ParametricPlot3D[g[20,8,2,1][3,4,35][u,s]//Evaluate,
{u,0,2 Pi},{s,-1,1},PlotPoints->{750,20},
DisplayFunction->Identity];

Y para visualizarla sin aristas:

aux[Graphics3D[l_,op_]]:=Graphics3D[{EdgeForm[],l}];
Show[aux[dib],DisplayFunction->$DisplayFunction,Axes->None,Boxed->False]
 

Más generalmente, podemos definir las ecuaciones:
 

g[alpha_,bet_,k_][r_][u_,s_]:=Map[(alpha[u]+#)&,
RR[bet[u]][i[f[k][2 r,r][u,s]]].base[alpha][u]]

donde alpha es una curva cualquiera y la siguiente funcion nos devuelve su vector
normal y binormal:

base[alpha_][u_]:=Module[{normal,binormal,a1,a2,a3,n},
a1=D[alpha[uu],uu] /.uu->u ;
a2=D[alpha[uu],{uu,2}] /.uu->u;
a3=D[alpha[uu],{uu,3}] /.uu->u;
binormal=Cross[a1,a2];n=Sqrt[binormal.binormal];binormal=binormal/n;
n=Sqrt[a1.a1];a1=a1/n;normal=Cross[binormal,a1];
{normal,binormal}]