我还是比较新的。试图发布更好的问题,希望更多的反馈!
我试图从热力学中画出代表等温线(红线)和绝热过程(暗线)的线条。来自wiki http://bit.ly/1Qixotl
的示例等温线的等式是压力(Y)*体积(X)=常数(温度) 所以我通过定义Y =常数/ X来绘制我的线条,然后使用绘制线命令找到这些曲线的点......我认为这些都没问题。
我坚持绝热线......这个方程几乎相同,但在混合中有一个指数。 Y * X ^ gamma =常数..伽玛通常是1.67但如果我尝试更高的值,它应该只是使黑暗曲线斜率更陡。
我试过调用Y =常数/ X ^ gamma,但是我应该使用对数吗?
任何帮助表示感谢。
//ISOTHERMS
//i = x axis; j = y axis;
// for values 1 - 350
// plot y values from isothermal equation -- P*V = constant T
// j = k/i
int k1 = 5000;
//int k1 = 1500;
//int k1 = 15000;
//int k2 = 20000;
int k2 = 15000;
//int k2 = 30000;
g.setColor(Color.red);
for( int i = 1; i < 350; i++)
{
int j1 = k1/i;
int j2 = k2/i;
//if(j1 < 350)
g.drawLine(i+50, j1+50, i+50, j1+50);
//if(j2 < 350)
g.drawLine(i+50, j2+50, i+50, j2+50);
}
//ADIABATS
//P*V^gamma = constant T
double gamma = 1.67;
for( int m = 1; m < 500; m++)
{
// int h1 = (int) (1400000/(Math.pow(m,1.97)));
int h1 = (int) (1000000/(Math.pow(m,2)));
//int h2 = (int) (3500000/(Math.pow(m,1.97)));
int h2 = (int) (2400000/(Math.pow(m,2)));
//if(j1 < 350)
g.setColor(Color.blue);
g.drawLine(m+50, h1+50, m+50, h1+50);
//if(j2 < 350)
g.drawLine(m+50, h2+50, m+50, h2+50);
}