I'm trying to port these models to PSpice and I'm running in problems.
1. "pi" is not defined. Not a big deal, takes just another .PARAM line, but is "pi" defined by default in LTSpice?
Yes, it's a built-in constant in LTspice.
2. "x" is not defined. I assume it's V(G, D), can you confirm?
Yes, that's right. Here's the LTspice docs that describe x.
There is also a general nonlinear capacitor available. Instead of specifying the capacitance, one writes an expression for the charge.
LTspice will compile this expression and symbolically differentiate it with respect to all the variables, finding the partial derivative's that correspond to capacitances.
Syntax: Cnnn n1 n2 Q=<expression> [ic=<value>] [m=<value>]
There is a special variable, x, that means the voltage across the device. Therefore, a 100pF constant capacitance can be written as
Cnnn n1 n2 Q=100p*x
3. This is a tough one. Are you sure about the Cgd expression? PSpice doesn't take Q (charge?) as a capacitor C parameter. Are you sure that's not Ggd instead of Cgd?
LTspice is a PITA for nonlinear capacitances. One cannot specify a nonlinear C-V characteristic directly. Instead, one must specify a Q-V characteristic. So if there's a formula for the C-V characteristic available, it's necessary with LTspice to compute its integral to get Q vs. V.
This post describes the LTspice VDMOS C-V model that I used for the nonlinear Cgd. It's split into two expressions, one involving atan() and one involving tanh(). The functions for Q vs. V are the integrals of tanh() and atan() with a 1/a out front, which I had to look up in a CRC math table book.
I'm pretty sure this isn't necessary in PSPICE, and that one can specify C-V directly. The post I linked above shows that A=C and B=D, so that can be used along with the equations in the first graph of that post to fill in Cgd vs. V directly. I think the PSPICE implementation should be a lot cleaner and simpler, with the atan() expression for Cgd with reverse-biased Vgd and tanh expression for Cgd with forward-biased Vgd.