the problem about dimension
hello everyFoamer:
I have two problems, and hope someone can help me, 1:when I use the function below: Foam::cos( -omega*runTime.value()) the dimension of omega is[0,0,-1,0,0,0,0], It can compile pretty well, but when caculating, the error comes as below: ds not dimensionless From function cos(const dimensionedScalar& ds) 2:when I assign the value as below: mass[cellI] =A*omega*Foam::cos(-omega*runTime.value()); mass is volScalarField , and intialized as dimensionedScalar("zero", dimensionSet(0,1,-1,0,0,0,0), 0.0) the dimension of A is [0,1,0,0,0,0,0],the dimension of omega is[0,0,-1,0,0,0,0], when compiled , it shows "error":can not convert dimensioned<double> to double ; what can I do , I really hope someone can give me some advice, thank you in advance! bojiezhang |
1) define omega as dimless , because when u use the value() function, it only returns the value of run time not its dimension!
2) its not important whats the dimension of volScalarField is, when you use just on array of it! its a scalar with out dimension so the left side should be dimensionless too, but ur left side is not dimension less, its an strange combination of [0 0 1 0 0 0 0]* cos [0 0 -1 0 0 0 0] for compiler, so define A as dimless too then congratulation ;) both ur problem get solved |
Quote:
|
All times are GMT -4. The time now is 20:59. |