This function returns a probe value for DC, OP, and transient analysis, selected by a string argument. Any state variable or parameter may be selected.
Usually the code consists of a string of if - elseif statements. If none match, in most cases it should call BASE::tr_probe_num and return its result.
double DEV_CAPACITANCE::tr_probe_num(const std::string& x)const { if (Umatch(x, "q{cap} |ch{arge} ")) { return _y[0].f0; }else if (Umatch(x, "c{apacitance} ")) { return _y[0].f1; }else{ return STORAGE::tr_probe_num(x); } }
This function returns a probe value for AC analysis, selected by a string argument. Any state variable or parameter may be selected.
It returns an XPROBE object:
enum mod_t {mtNONE, mtMAG, mtPHASE, mtREAL, mtIMAG}; class XPROBE{ private: COMPLEX _value; mod_t _modifier; // default double _dbscale; // 20 for voltage, 10 for power, etc. // ..... }
Usually, the returned value is made by a constructor with one argument, using defaults for _modifier and _dbscale. The value is a COMPLEX number.