Beispiel #1
0
void mexFunction( int nlhs, mxArray *plhs[],
             int nrhs, const mxArray *prhs[] ) {

  int rnd;

  rnd = mxGetScalar(prhs[0]);

  switch (rnd) {
    case  1 :  setRC (RC_UP);   break;
    case  0 :  setRC (RC_NEAR); break;
    case -1 :  setRC (RC_DOWN); break;
    default :  setRC (RC_NEAR); break;
  }

} /* setround */
Beispiel #2
0
Matrix::Matrix(int r, int c)
{
	setRC(r, c);
	mat = new T*[getRow()];
	for(int i = 0; i < getRow(); i++)
		mat[i] = new T[getColumn()];
}
Beispiel #3
0
Matrix::Matrix(const Matrix & right)
{
	setRC(right.getRow(), right.getColumn());
	mat = new T*[getRow()];
	for(int i = 0; i < getRow(); i++)
		mat[i] = new T[getColumn()];

	for(int i = 0; i < getRow(); i++)
		for(int j = 0; j < getColumn(); j++)
			mat[i][j] = right.getEntry(i, j);
}
Beispiel #4
0
Matrix Matrix::operator=(const Matrix & right)
{
	for(int i = 0; i < getRow(); i++)
	{
		delete[] mat[i];
	}
	delete[] mat;

	setRC(right.getRow(), right.getColumn());
	mat = new T*[getRow()];
	for(int i = 0; i < getRow(); i++)
		mat[i] = new T[getColumn()];
	for(int i = 0; i < getRow(); i++)
		for(int j = 0; j < getColumn(); j++)
			mat[i][j] = right.getEntry(i, j);

	return *this;
}
Beispiel #5
0
int main(void)
{
	bool bcm2835init = 0;
	bool SPIinit = 0;
	
	bcm2835_init();
	AD5235_init();
	
	
	int valueADCint = 0;
	int valueDACint = 0;
	double valueADC = 0;
	double valueDAC = 0;
	
	std::string input_K;
	std::string input_T;
	
	double K = 0.3;
	double T = 2E-5;
	//while (1)
	//{
		//std::cout << "K = ";
		//std::cin >> K;
		//computeResistance(1E-4, K);
		//setRC();
	//}
	
	std::cout << "parameters for RC circuit:\n";
	std::cout << "enter time constant (default: 2E-5): ";
	std::getline(std::cin, input_T);
	if (!input_T.empty())
	{
		T = std::stod(input_T, NULL);
		std::cout << "T = " << T << "\n";
	}
	std::cout << "enter gain (default: 0.3): ";
	std::getline(std::cin, input_K);
	if (!input_K.empty())
	{
		K = std::stod(input_K, NULL);
	}
	std::cout << "\n";
	computeResistance(T, K);
	setRC();
	
	//setR12(1023, 1023);
	
	AD7840_init();
	AD7484_init();
	
	writeToDAC(0);
	
	std::cout << "press enter to start simulation of PMDCM...";
	std::cin.ignore();
	
	//while (1)
	//{
		//writeToDAC(readADC());
	//}

	
	PMDCmotorIO();
	
	//while (1)
	//{
		//std::cout << "set Vout: ";
		//std::cin >> Vout;
		//writeToDAC(Vout);
	//}
	
	std::cout << "done" << std::endl;
	std::cin.ignore();
	
	return 0; 
}
Beispiel #6
0
void Phasor::addImaginary(double i) {
    double x = real();
    double y = imag() + i;
    setRC(x,y);
}
Beispiel #7
0
void Phasor::addReal(double r) {
    double x = real() + r;
    double y = imag();
    setRC(x,y);
}