当前位置:文档之家› Esper学习之十五:Pattern(二)

Esper学习之十五:Pattern(二)

Esper学习之十五:Pattern(二)
Esper学习之十五:Pattern(二)

上一篇开始了新一轮语法——Pattern的讲解,一开始为大家普及了几个基础知识,其中有说到操作符。当时只是把它们都列举出来了,所以今天这篇就是专门详解这些操作符的,但是由于篇幅限制,本篇先会讲几个,剩余的后面几篇会逐个讲解。

1. Followed-by

如果各位有看过官方文档,应该会发现Followed-by的讲解是在比较靠后的位置,而放在第一的是Every关键字。我把它提前主要是因为其他的关键字结合Followed-by能更好的说明那个关键字的特点。如果不习惯我这样的顺序硬要跟着文档学习的朋友,可以跳过这一节先看后面的内容。

Followed-by,顾名思义就是“紧跟,跟随”的意思,通常用于事件之间的关联。举个现实生活中的例子:比如下班了,我用钥匙把家门打开,这是一个事件,紧接着我打开了浴室的灯,这也是一个事件,由于我之前在中央控制系统里设定了一个规则:打开家门后如果开了浴室的灯,热水就会放好,我一会儿就能洗澡了。所以我之前的一系列操作就触发了放热水这个动作。可能这个例子不是比较实际,但是应该能很清楚的说明这个关键字的含义吧。

Followed-by的操作符用减号和大于号组成,即->,和C语言里的指针一模一样。操作符两边是事件名称,表示右边的事件跟随左边的事件发生之后发生,即进入引擎。如果只是简单的事件follow,在操作符的两边写上事先定义的事件名或者类全名。例如:

[plain]view plaincopy

1.AppleEvent -> BananaEvent

2.

3.// or

4.

https://www.doczj.com/doc/3b3635304.html,.xxx.Benz -> com.yyy.Audi

但是如果前后事件之间有关联,那事件名或者类全名就需要设置一个别名。例如:[plain]view plaincopy

1.a=AppleEvent -> b=BananaEvent(b.price = a.price) /

/ equals: a=AppleEvent -> b=BananaEvent(price = a.price)

设置别名的原因很简单,就是为了方便描述事件之间的关联信息。但是有意思的是,对于前两个简单follow不设置别名esper不会报语法错误,但是实际运行时你无法通过api获取满足条件的事件,而带上别名的事件是可以正常获取的。

先上一个简单的例子:

[java]view plaincopy

1.package example;

2.

3.import com.espertech.esper.client.EPAdministrator;

4.import com.espertech.esper.client.EPRuntime;

5.import com.espertech.esper.client.EPServiceProvider;

6.import com.espertech.esper.client.EPServiceProviderManager;

7.import com.espertech.esper.client.EPStatement;

8.import com.espertech.esper.client.EventBean;

9.import com.espertech.esper.client.UpdateListener;

10.

11./**

12. * Created by Luonanqin on 9/5/14.

13. */

14.class FollowedEvent {

15.

16. private int size;

17.

18. public int getSize() {

19. return size;

20. }

21.

22. public void setSize(int size) {

23. this.size = size;

24. }

25.

26. public String toString() {

27. return "FollowedEvent{" + "size=" + size

+ '}';

28. }

29.}

30.

31.class PatternFollowedListener implements UpdateListener {

32.

33. public void update(EventBean[] newEvents, EventBean

[] oldEvents) {

34. if (newEvents != null) {

35. for (int i = 0; i < newEvents.le

ngth; i++) {

36. System.out.println();

37. EventBean event = newEvents[

i];

38. System.out.println("Result:");

39. System.out.println(event.get("a

") + " " + event.get("b"));

40. }

41. }

42. }

43.}

44.

45.public class PatternFollowedTest {

46.

47. public static void main(String[] args) {

48. EPServiceProvider epService = EPServiceProvi

derManager.getDefaultProvider();

49. EPAdministrator admin = epService.getEPAdmin

istrator();

50. EPRuntime runtime = epService.getEPRuntime()

;

51.

52. String followed = FollowedEvent.class.getNam

e();

53.

54. String epl = "select * from pattern[every

a=" + followed + " -> b=" + followed + "(size < a .size)]";

55. System.out.println("EPL: " + epl+"\n");

56. EPStatement stat = admin.createEPL(epl);

57. stat.addListener(new PatternFollowedListener()

);

58.

59. FollowedEvent f1 = new FollowedEvent();

60. f1.setSize(1);

61. System.out.println("Send Event1: " + f1);

62. runtime.sendEvent(f1);

63. System.out.println();

64.

65. FollowedEvent f2 = new FollowedEvent();

66. f2.setSize(3);

67. System.out.println("Send Event2: " + f2);

68. runtime.sendEvent(f2);

69. System.out.println();

70.

71. FollowedEvent f3 = new FollowedEvent();

72. f3.setSize(2);

73. System.out.println("Send Event3: " + f3);

74. runtime.sendEvent(f3);

75. }

76.}

执行结果:

[plain]view plaincopy

1.EPL: select * from pattern[every a=example.FollowedEvent

-> b=example.FollowedEvent(size < a.size)]

2.

3.Send Event1: FollowedEvent{size=1}

4.

5.Send Event2: FollowedEvent{size=3}

6.

7.Send Event3: FollowedEvent{size=2}

8.

9.Result:

10.FollowedEvent{size=3} FollowedEvent{size=2}

例子中的pattern是由every和followed-by两个结构组合而成,所实现的效果是针对每一个事件,都监听其follow后同类型的事件的 size值小于follow前的事件。只要满足pattern定义,通过get对应的别名就可以获得触发时的具体事件。并且满足触发条件的事件不会再次被监听。大家重点关注followed-by,every之后会有详细说明。

以上面的例子来说,我们会监听所有进入引擎的FollowedEvent 事件,并等待匹配规则的follow事件。但是如果满足条件的事件一直不发生,那么之前的等待事件就会一直存于引擎内,这势必会引起内存溢出,或者我们有某种需求,即只保留某一部分的事件用来等待匹配的follow事件。Esper为此提供了进阶的Followed-by语法:

[plain]view plaincopy

1.lhs_expression -[limit_expression]> rhs_expression

lhs_expression和rhs_expression就是之前所说的发生顺序有关联的两个事件,而中间的“->”被一个限制表达式分开了,这里的限制表达式需要返回一个int数值,也可以直接写一个数字。整体的含义是:当左边事件等待满足条件的右边事件时,最多只保留n个左边事件在引擎内等待触发,其

余事件不留在引擎内。而这个n就是限制表达式的返回值。无论左边事件数量是否达到n,只要满足条件的右边事件到达并触发后,引擎便重新等待新的左边事件并重新计数,直到超过n。。。这个过程会不断循环。完整示例如下:

[java]view plaincopy

1.package example;

2.

3.import com.espertech.esper.client.EPAdministrator;

4.import com.espertech.esper.client.EPRuntime;

5.import com.espertech.esper.client.EPServiceProvider;

6.import com.espertech.esper.client.EPServiceProviderManager;

7.import com.espertech.esper.client.EPStatement;

8.import com.espertech.esper.client.EventBean;

9.import com.espertech.esper.client.UpdateListener;

10.

11./**

12. * Created by Luonanqin on 9/10/14.

13. */

14.class LimitEvent {

15.

16. private int age;

17.

18. public int getAge() {

19. return age;

20. }

21.

22. public void setAge(int age) {

23. this.age = age;

24. }

25.

26. public String toString() {

27. return "LimitEvent{" + "age=" + age + '}

';

28. }

29.}

30.

31.class LimitFollowedListener implements UpdateListener {

32.

33. public void update(EventBean[] newEvents, EventBean

[] oldEvents) {

34. if (newEvents != null) {

35. System.out.println("\nResult: ");

36. for (int i = 0; i < newEvents.le

ngth; i++) {

37. EventBean event = newEvents[

i];

38. System.out.println("a=" + eve

nt.get("a") + " b=" + event.get("b"));

39. }

40.

41. System.out.println();

42. }

43. }

44.}

45.

46.public class LimitFollowedTest {

47.

48. public static void main(String[] args) {

49. EPServiceProvider epService = EPServiceProvi

derManager.getDefaultProvider();

50. EPAdministrator admin = epService.getEPAdmin

istrator();

51. EPRuntime runtime = epService.getEPRuntime()

;

52.

53. String limit = LimitEvent.class.getName();

54. String follow = FollowedEvent.class.getName(

);

55.

56. /* 在每次触发完成前最多只保留2个a事件,触发条

件为b的size值大于a的age */

57. String epl = "every a=" + limit + " -[

2]> b=" + follow + "(size > a.age)";

58. System.out.println("EPL: " + epl + "\n");

59.

60. EPStatement stat = admin.createPattern(epl);

61. stat.addListener(new LimitFollowedListener());

62.

63. System.out.println("First Send!\n");

64.

65. LimitEvent l1 = new LimitEvent();

66. l1.setAge(1);

67. System.out.println("Send Event: " + l1);

68. runtime.sendEvent(l1);

69.

70. LimitEvent l2 = new LimitEvent();

71. l2.setAge(2);

72. System.out.println("Send Event: " + l2);

73. runtime.sendEvent(l2);

74.

75. LimitEvent l3 = new LimitEvent();

76. l3.setAge(0);

77. System.out.println("Send Event: " + l3);

78. runtime.sendEvent(l3);

79.

80. FollowedEvent f1 = new FollowedEvent();

81. f1.setSize(3);

82. System.out.println("Send Event: " + f1);

83. runtime.sendEvent(f1);

84.

85. FollowedEvent f2 = new FollowedEvent();

86. f2.setSize(4);

87. System.out.println("Send Event: " + f2);

88. runtime.sendEvent(f2);

89.

90. System.out.println();

91. System.out.println("Second Send!\n");

92. System.out.println("Send Event: "+l1);

93. runtime.sendEvent(l1);

94. System.out.println("Send Event: " + l2);

95. runtime.sendEvent(l2);

96. System.out.println("Send Event: " + l3);

97. runtime.sendEvent(l3);

98. System.out.println("Send Event: " + f1);

99. runtime.sendEvent(f1);

100.}

101.}

执行结果:

[plain]view plaincopy

1.EPL: every a=example.LimitEvent -[2]> b=example.FollowedEve

nt(size > a.age)

2.

3.First Send!

4.

5.Send Event: LimitEvent{age=1}

6.Send Event: LimitEvent{age=2}

7.Send Event: LimitEvent{age=0}

8.Send Event: FollowedEvent{size=3}

9.

10.Result:

11.a=LimitEvent{age=1} b=FollowedEvent{size=3}

12.a=LimitEvent{age=2} b=FollowedEvent{size=3}

13.

14.Send Event: FollowedEvent{size=4}

15.

16.Second Send!

17.

18.Send Event: LimitEvent{age=1}

19.Send Event: FollowedEvent{size=3}

20.

21.Result:

22.a=LimitEvent{age=1} b=FollowedEvent{size=3}

例子中的epl已经给了注释说明含义,从运行结果中也可以看出,第一次发送时,FollowedEvent只触发了前两个age为1和2的 LimitEvent,说明-[2]>起到了限制等待的LimitEvent事件数量为2的效果。第二次发送时,可以看到第一次触发之后 -[2]>重新开始计数,FollowedEvent到达后就直接触发了。

关于限制左边事件的内容,有些是通过配置完成。比如说针对所有的pattern

语句都限制,不必每次都写在句子中。这个在之后的配置章节会有讲解。

2.Every

这个操作符想必大家已经不陌生了。例子也看了这么多,顾名思义也能想到它代表的就是“每一个”的意思。实际上他表示的是,为操作符后的事件或者子pattern表达式建立一个监听实例,只要满足触发条件这个实例就到此结束。比如:

[plain]view plaincopy

1.1).

2.select * from pattern[every LimitEvent]

3.// equals to

4.select * from LimitEvent

5.

6.2).

7.every FollowedEvent(size > 2)

8.

9.3).

10.every a=LimitEvent -> b=FollowedEvent(size > a.age)

第一个例子是针对每一个LimitEvent事件都监听,所以等同于另一个非pattern写法。第二个例子监听每一个FollowedEvent,且事件的size 要大于2,也就是一个filter。第三个例子我在之前有讲过,->的左右组合在一起可以算是一个子表达式(即followed- by),但是every真的是针对这个子表达式么?其实不然,every的优先级要大于->,所以every为每一个LimitEvent 建立监听实例,并根据一定条件等待FollowedEvent。

我之所以先讲Followed-by,就是因为every和->的不同优先级会把各位弄晕,所以先让大家把->搞清楚再来看各种组合情况。

我把文档里的一个优先级例子放在这里专门讲解下,完整例子我就不写了。[plain]view plaincopy

1.假设事件传入引擎的顺序是这样的:

2.

3.A1 B1 C1 B2 A2 D1 A3 B3 E1 A4 F1 B4

4.

5.注意:every优先级高于->,但是圆括号优先级高于所有操作符

6.

7.Pattern 1:

8.every ( A -> B )

9.

10.匹配结果:

11.{A1, B1}

12.{A2, B3}

13.{A4, B4}

14.

15.说明:因为有括号,所以every针对的是每一个A->B。A2后面的B3到

达前,出现了A3,但是B3到达后并未匹配A3,说明every只有在一个

完整的匹配发生后再对A进行新的监听,因此A3不会被监听。比如说:

A1 A2 A3 A4 B1这样的发生顺序只会导致A1->B1

16.

17.Pattern 2:

18.every A -> B

19.

20.匹配结果:

21.{A1, B1}

22.{A2, B3} {A3, B3}

23.{A4, B4}

24.

25.说明:由于没有括号,所以every的优先级大于->,所以every针对的

是A,而不是A->B。也就是说,引擎每进入一个A,every都为其新建一个pattern实例等待B事件的发生。所以可以从结果中可以看出,B3进入引擎后同时触发了A2和A3

26.

27.Pattern 3:

28.A -> every B

29.

30.匹配结果:

31.{A1, B1}

32.{A1, B2}

33.{A1, B3}

34.{A1, B4}

35.

36.说明:every的优先级大于->,且every只作用于B,所以->只会针对第

一个A事件起作用,并且每一个B都可以匹配这个A。

37.

38.Pattern 4:

39.every A -> every B

40.

41.匹配结果:

42.{A1, B1}

43.{A1, B2}

44.{A1, B3} {A2, B3} {A3, B3}

45.{A1, B4} {A2, B4} {A3, B4} {A4, B4}

46.

47.说明:A和B都用every修饰,every的优先级大于->,所以针对每一个

A和B都可以匹配->。再说得通俗一点,只要A在B前进入引擎,那么A 后面的B都可以和这个A匹配成功。

上面的四个例子可以很清楚的表达出every的意思,更为复杂的例子就是将A和B替换成别的子pattern表达式,各位可以试着自己写写看一下效果。比如:every A->B->C

3. Every-Distinct

Every-Distinct和Every基本一样,唯一的区别是Every-Distinct会根据事件

的某些属性过滤掉重复的,避免触发监听器。其余用法和Every相同。具体语法如下:

[plain]view plaincopy

1.every-distinct(distinct_value_expr [, distinct_value_expr[...

] [, expiry_time_period])

distinct_value_expr表示参与过滤的事件属性,比如:

[plain]view plaincopy

1.every-distinct(a.num) a=A

并且可以多个属性联合在一起,就像联合主键那样。比如:

[plain]view plaincopy

1.every-distinct(a.num, b.age) a=A -> b=B

用于过滤的事件属性值在量很大的情况下会占用很多内存,所以我们需要给它设定一个过期值,也就是语法中的expiry_time_period。这个关键字表示的时间到达时,pattern重新匹配新的事件,而不受之前事件的用于过滤的属性值的影响。比如说:

[plain]view plaincopy

1.EPL: every-distinct(a.num, 3 sec) a=A

2.

3.Send: A1: {num=1}

4.Send: A2: {num=1}

5.

6.After 3 seconds

7.

8.Send: A3: {num=1}

第一次发送num为1的A1事件会触发监听器,紧接着发送num 为1的A2事件,不会触发,因为num=1已经出现过了,所以A2被过滤。3秒过后,pattern被重置,这时发送A3,监听器收到该事件。这个过程一直持续,即每3秒重置一次pattern,直到EPL实例被销毁。

语法讲解就这么多,以下几个点需要各位注意:

1).语法后面跟的子表达式如果返回false,pattern也会被重置。这一点下面的例子会说明。

2).无论多少个事件的属性参与过滤,其事件名必须设置别名,以“别名.属性名”的方式写在圆括号内。

3).事件别名一定要在子表达式中定义,否则语法错误。比如:a=A ->

every-distinct(a.aprop) b=B

总结上面的所有内容,我写了个完整的例子供大家参考。

[java]view plaincopy

1.package example;

2.

3.import com.espertech.esper.client.EPAdministrator;

4.import com.espertech.esper.client.EPRuntime;

5.import com.espertech.esper.client.EPServiceProvider;

6.import com.espertech.esper.client.EPServiceProviderManager;

7.import com.espertech.esper.client.EPStatement;

8.import com.espertech.esper.client.EventBean;

9.import com.espertech.esper.client.UpdateListener;

10.

11./**

12. * Created by Luonanqin on 9/15/14.

13. */

14.class EveryDistinctEvent {

15.

16. private int num;

17.

18. public int getNum() {

19. return num;

20. }

21.

22. public void setNum(int num) {

23. this.num = num;

24. }

25.

26. public String toString() {

27. return "EveryDistinctEvent{" + "num=" + nu

m + '}';

28. }

29.}

30.

31.class EveryDistinctListener implements UpdateListener {

32.

33. public void update(EventBean[] newEvents, EventBean

[] oldEvents) {

34. if (newEvents != null) {

35. System.out.println("\nResult: ");

36. for (int i = 0; i < newEvents.le

ngth; i++) {

37. EventBean event = newEvents[

i];

38. System.out.println(event.get("a

"));

39. }

40. }

41. }

42.}

43.

44.public class EveryDistinctTest {

45.

46. public static void main(String[] args) throws Int

erruptedException {

47. EPServiceProvider epService = EPServiceProvi

derManager.getDefaultProvider();

48. EPAdministrator admin = epService.getEPAdmin

istrator();

49. EPRuntime runtime = epService.getEPRuntime()

;

50.

51. String everyDistinct = EveryDistinctEvent.cl

ass.getName();

52. String limit = LimitEvent.class.getName();

53.

54. String epl1 = "every-distinct(a.num) a=" +

everyDistinct;

55. System.out.println("EPL1: " + epl1);

56. EPStatement stat1 = admin.createPattern(epl1

);

57. stat1.addListener(new EveryDistinctListener())

;

58.

59. EveryDistinctEvent ed1 = new EveryDistinctE

vent();

60. ed1.setNum(1);

61.

62. EveryDistinctEvent ed2 = new EveryDistinctE

vent();

63. ed2.setNum(2);

64.

65. EveryDistinctEvent ed3 = new EveryDistinctE

vent();

66. ed3.setNum(1);

67.

68. System.out.println("\nSend Event: " + ed1);

69. runtime.sendEvent(ed1);

70. System.out.println("\nSend Event: " + ed2);

71. runtime.sendEvent(ed2);

72. System.out.println("\nSend Event: " + ed3);

73. runtime.sendEvent(ed3);

74.

75. stat1.destroy();

76.

77. String epl2 = "every-distinct(a.num) (a="

+ everyDistinct + " and not " + limit + ")";

78. System.out.println("\nEPL2: " + epl2);

79. EPStatement stat2 = admin.createPattern(epl2

);

80. stat2.addListener(new EveryDistinctListener())

;

81.

82. LimitEvent l1 = new LimitEvent();

83.

84. System.out.println("\nSend Event: " + ed1);

85. runtime.sendEvent(ed1);

86. System.out.println("\nSend Event: " + ed2);

87. runtime.sendEvent(ed2);

88. System.out.println("\nSend Event: " + l1);

89. runtime.sendEvent(l1);

90. System.out.println("\nSend Event: " + ed3);

91. runtime.sendEvent(ed3);

92.

93. stat2.destroy();

94.

95. String epl3 = "every-distinct(a.num, 3 sec

) a=" + everyDistinct;

96. System.out.println("\nEPL3: " + epl3);

97. EPStatement stat3 = admin.createPattern(epl3

);

98. stat3.addListener(new EveryDistinctListener())

;

99.

100.System.out.println("\nSend Event: " + ed1);

101.runtime.sendEvent(ed1);

102.System.out.println("\nSend Event: " + ed2);

103.runtime.sendEvent(ed2);

104.System.out.println("\nSleep 3 seconds!") ;

105.Thread.sleep(3000);

106.System.out.println("\nSend Event: " + ed3);

107.runtime.sendEvent(ed3);

108.}

109.}

执行结果:

[plain]view plaincopy

1.EPL1: every-distinct(a.num) a=example.EveryDistinctEvent

2.

3.Send Event: EveryDistinctEvent{num=1}

4.

5.Result:

6.EveryDistinctEvent{num=1}

7.

8.Send Event: EveryDistinctEvent{num=2}

9.

10.Result:

11.EveryDistinctEvent{num=2}

12.

13.Send Event: EveryDistinctEvent{num=1}

14.

15.EPL2: every-distinct(a.num) (a=example.EveryDistinctEvent an

d not example.LimitEvent)

16.

17.Send Event: EveryDistinctEvent{num=1}

18.

19.Result:

20.EveryDistinctEvent{num=1}

21.

22.Send Event: EveryDistinctEvent{num=2}

23.

24.Result:

25.EveryDistinctEvent{num=2}

26.

27.Send Event: LimitEvent{age=0}

28.

29.Send Event: EveryDistinctEvent{num=1}

30.

31.Result:

32.EveryDistinctEvent{num=1}

33.

34.EPL3: every-distinct(a.num, 3 sec) a=example.EveryDistinctE

vent

35.

36.Send Event: EveryDistinctEvent{num=1}

37.

38.Result:

39.EveryDistinctEvent{num=1}

40.

41.Send Event: EveryDistinctEvent{num=2}

42.

43.Result:

44.EveryDistinctEvent{num=2}

45.

46.Sleep 3 seconds!

47.

48.Send Event: EveryDistinctEvent{num=1}

49.

50.Result:

51.EveryDistinctEvent{num=1}

在EPL2中,every-distinct后面的子表达式是EveryDistinctEvent and not LimitEvent,所以在发送EveryDistinctEvent 之后发送LimitEvent,就导致子表达式false,所以在此发送 num=1的EveryDistinctEvent时监听器被触发。

Pattern的操作符本篇只说了3个,内容虽然不多,但是大家一定要掌握好,特别是操作符之间的优先级,理解不透的话很容易出现意想不到的结果。下篇会接着讲几个我自己都很少用到操作符,敬请期待……

热力学第一定律总结

热一定律总结 一、 通用公式 ΔU = Q + W 绝热: Q = 0,ΔU = W 恒容(W ’=0):W = 0,ΔU = Q V 恒压(W ’=0):W =-p ΔV =-Δ(pV ),ΔU = Q -Δ(pV ) ΔH = Q p 恒容+绝热(W ’=0) :ΔU = 0 恒压+绝热(W ’=0) :ΔH = 0 焓的定义式:H = U + pV ΔH = ΔU + Δ(pV ) 典型例题:3.11思考题第3题,第4题。 二、 理想气体的单纯pVT 变化 恒温:ΔU = ΔH = 0 变温: 或 或 如恒容,ΔU = Q ,否则不一定相等。如恒压,ΔH = Q ,否则不一定相等。 C p , m – C V , m = R 双原子理想气体:C p , m = 7R /2, C V , m = 5R /2 单原子理想气体:C p , m = 5R /2, C V , m = 3R /2 典型例题:3.18思考题第2,3,4题 书2.18、2.19 ΔU = n C V , m d T T 2 T 1 ∫ ΔH = n C p, m d T T 2 T 1 ∫ ΔU = nC V , m (T 2-T 1) ΔH = nC p, m (T 2-T 1)

三、 凝聚态物质的ΔU 和ΔH 只和温度有关 或 典型例题:书2.15 四、可逆相变(一定温度T 和对应的p 下的相变,是恒压过程) ΔU ≈ ΔH –ΔnRT (Δn :气体摩尔数的变化量。如凝聚态物质之间相变,如熔化、凝固、转晶等,则Δn = 0,ΔU ≈ ΔH 。 101.325 kPa 及其对应温度下的相变可以查表。 其它温度下的相变要设计状态函数 不管是理想气体或凝聚态物质,ΔH 1和ΔH 3均仅为温度的函数,可以直接用C p,m 计算。 或 典型例题:3.18作业题第3题 ΔU ≈ ΔH = n C p, m d T T 2 T 1 ∫ ΔU ≈ ΔH = nC p, m (T 2-T 1) Δ H m (T ) = ΔH 1 +Δ H m (T 0) + ΔH 3 α β β α Δ H m (T ) α β Δ H 1 ΔH 3 Δ H m (T 0) α β 可逆相变 ΔH = Q p = n Δ H m α β ΔH = nC p, m (T 2-T 1) ΔH = n C p, m d T T 2 T 1 ∫

热力学第一定律

热力学第一定律 一.选择题 1. 将CuSO4水溶液置于绝热箱中,插入两个铜电极,以蓄电池为电源进行电解,可以看作封闭体系的是 (a) 绝热箱中所有物质 (b) 两个铜电极; (c) 蓄电池和铜电极(d) CuSO4水溶液。 2.选择系统的原则是 (a)符合能量转换和守恒的规律 (b)使研究的问题得到合理的、简明的解答 (c)便于计算过程中的功和热及热力学函数的变化值 (d)便于考察环境对系统的影响 3. x为状态函数,下列表述中不正确的是 (a) d x为全微分 (b) 当状态确定,x的值确定 (c) ?x= ∫d x的积分与路经无关,只与始终态有关 (d) 当体系状态变化,x值一定变化 4. 状态函数的性质 (a)绝对值不知(b)相互独立 (c)都有偏摩尔量(d)变化值仅取决于始末态 5. 体系的状态改变了,其内能值 (a)必定改变(b)必定不变 (c)不一定改变(d)状态与内能无关 6. 封闭体系从A态膨胀为B态,可以沿两条等温途径:甲)可逆途径;乙)不可逆途径,则下列关系式 ⑴ΔU可逆> ΔU不可逆⑵∣W可逆∣> ∣W不可逆∣ ⑶Q可逆> Q不可逆⑷( Q可逆- W可逆) > ( Q不可逆- W不可逆) 正确的是 (a) (1),(2) (b) (2),(3) (c) (3),(4) (d) (1),(4) 7. 当理想气体冲入一真空绝热容器后,其温度将 (a) 升高(b) 降低 (c) 不变(d) 难以确定 8. 当热力学第一定律写成d U = δQ–p d V时,它适用于 (a).理想气体的可逆过程(b). 封闭体系的任一过程 (c). 封闭体系只做体积功过程(d). 封闭体系的定压过程 9. 对于孤立体系中发生的实际过程,下列关系中不正确的是 (a) W = 0 (b) Q = 0 (c) ΔU= 0 (d) ΔH = 0 10. 关于热平衡, 下列说法中正确的是 (a)系统处于热平衡时, 系统的温度一定等于环境的温度 (b)并不是所有热力学平衡系统都必须满足热平衡的条件 (c)若系统A与B成热平衡, B与C成热平衡, 则A与C直接接触时也一定成热平衡 (d)在等温过程中系统始终处于热平衡 11. 理想气体自由膨胀过程中 (a). W = 0,Q>0,?U>0,?H=0 (b). W>0,Q=0,?U>0,?H>0

管理学第十五章

第五篇控制 第十五章控制 有效的管理者应该始终督促他人,以保证应该采取的行动事实上已经在进行,保证他人应该达到的目标事实上已经达到。 ——斯蒂芬〃P〃罗宾斯 第一节概述 控制是管理过程循环的最后一环,通常认为,管理工作始于计划的制定,然后是组织和领导计划的实施,但在计划实施的过程中,由于组织所处的环境是不断变化的,是难以预测到的,例如,竞争对手策略的改变、供应商竞争格局的变化、消费者喜好的转移、重要目标市场所在地的自然灾害的爆发以及本组织内部人员的变动等。这些都将对组织目标和计划的实现产生较大影响,所以,并非高层管理者把组织的目标和计划确定以后,交给相应的部门去执行,到时候组织目标就实现了。本章的内容就是关于管理着如何通过管理的控制职能,来保证组织目标在不确定的环境中得以实现。 一、控制的概念 人类的行为具有明确的目的性。人类在实施行为的过程中为实现自己的目的,需要根据实际情况不断的调整自己的行为,向着目标前进。在日常生活中,我们常说控制好时间,控制好工作或学习的速度,控制开支等,即我们必须随时注意自己手中所进行的事件的实际状态。如果这种状态和我们事先的预期不一致,就必须采取适当措施,进行纠正,以保证目标的实现。 在组织的管理过程中,控制的含义同人们日常生活中所使用的控制概念没有质的区别。只是日常生活中的控制一般指比较具体的事物,而管理学中的控制一般指对组织运行状态的控制。所谓控制是监督组织各方面的活动,保证组织实际运行状况与计划要求保持动态适应的过程。我们可以从来两个方面来理解控制的概念: 一是按照计划标准衡量计划的完成状况,针对出现的偏差情况采取校正措施,以确保计划得以顺利实施,也就是“纠偏”,这是传统意义上的狭义的理解; 二是在纠偏的同时还包含着在必要时修改计划标准,以使计划更加适合实际情况,这是现代意义上的广义的理解。 从广义的角度来看,控制可以说既是一个管理工作过程的终结,又是一个新的管理工作过程的开始。 为准确把握控制职能的含义,我们还需要把控制与计划职能联系起来。 计划和控制是同一个事物的两个方面。一方面,有计划而没有控制,人们可能知道自己干了什么,但无法知道自己干的怎么样,存在哪些问题,哪些地方需要改进。另一方面,有控制而没有目标和计划,人们将不会知道要控制什么,也不会知道怎么控制。所以,计划和控制二者密不可分。事实上,计划越是明确、全面和完整,控制的效果也就越好;控制工作越是科学、有效,计划也就越容易得到实施。控制好比是汽车驾驶员的方向盘,它把组织、领导职能与计划设定的目标联结在一起,在必要时,它能随时启动新的计划方案,使组织运行的目标更加符合自身的资源条件和适应组织环境的变化。

热力学第一定律

一.热力学第一定律 热力学第一定律是能量转化和守恒定律在热现象过程中,内能和其他形式的能相互转化的数量关系。它的内容是:系统的内能增量等于系统从外界吸收的热量和外界对系统做功的和。设系统的内能变化量为E ?,外界对系统做功为W ,系统吸收外界的热量为Q ,则有: E ?=W +Q 在使用这个定律时要注意三个量的符号处理:外界对系统做功,W 取正值,系统对外做功W 取负值,如果系统的体积不变,则W =0;系统从外界吸热,Q 取正值,系统对外界放热,Q 取负值;系统的内能增加,E ?取正值,系统的内能减小,E ?取负值。 二.二.理想气体的状态方程 (一)理想气体的状态方程 一定质量的理想气体,不论P 、V 、T 怎样变化,任一平衡态的T PV 是恒量;即有 111T V P =22 2T V P =恒量 设气体状态方程中气体的压强P 0=1标准大气压,1摩尔气体在温度T 0=273.15K ,其 体积是V 0=22.4升,则000T V P =开摩尔米帕15.273104.2210013.11 335--????=8.31帕?米3/开?摩尔。00 0T V P 的比值是与气体的性质无关的恒量,通常用R 表示,称为普适气体恒量,其值为 R =00 0T V P =8.31帕?米3/开?摩尔=8.31焦/开?摩尔=8.2×10- 2大气压?升/开?摩尔 1摩尔气体的状态方程可写成T V P =00 0T V P =R 或PV=RT ,n 摩尔的气体在标准状态 下的体积为V = n V 0,气体的状态方程为T V P =000T nV P = n R ,由此可得理想气体的状态 方程(即克拉珀龙方程): P V = n R T =M m R T

行为财务学

行为财务学 行为财务学作为新兴的财务学理论分支,自诞生以来就与占据财务学统治地位已有三十年之久的有效市场假说,财务学基础的套利理论,投资人理性以及自1980年以来的大量异常现象实行了长达二十多年之久的争论,双方此消彼长,共同加深了人们对资本市场和企业财务的理解,促动了财务学向更广更深的方向发展。行为财务学的发展已初步完成了从批评到建设的关键一步,它不再是纯粹的批判式理论。但不容否认的是,行为财务学所引用的主要是实验心理学的若干原理,而心理学或其他社会科学的研究基础和出发点与经济学理论不同。心理学研究的是在不同情景下人们的认知模式;而经济学则研究在稳定的环境下人们的经济判断和决策。亦即在各种情景下某些特殊的心理学现象不能成为经济学普遍规律的研究基础。理论上的缺陷再加上实验环境与现实生活的较大差异,使得行为财务学在体系上缺乏一致性的同时,也为其学科的准确定位增添了难度,亦即行为财务学到底是一门独立完整的学科体系,还是仅仅是喜欢标新立异的异类顽童而成为财务学研究中的匆匆过客?当前行为财务学的研究已深入到财务领域的各个方面,但仍属于零打碎敲和零散叫卖的阶段,尚未寻找到一块安身立命之地。最新文献表明,未来行为财务学的发展正朝着两个方向努力。一是逐步将现有理论模型整合为较为统一的理论体系并进一步获得实践的检验。Shefrin和Stateman(1994)实行了这方面的努力,但到现在为止,绝绝大多数研究集中于鉴别可能对资本市场行为有系统影响的行为决策属性。另一种研究前景是将传统财务理论与行为财务理论结合起来并在新的基础上实行全面整合。在理论上,Brave和Lfenton(2002)认为两种理论本质上是一致的;Bar-beris 和Thaler指出,一种新的,能够包容两者的理论或许将替代“理性范式”与“行为范式”;在实践中,Daniel、Hir-sheifer和Subrahmanyam(2001)基于投资者过度自信的心理偏差建立起的一个融合新古典理性预期和行为财务非理性预期的模型,可说是朝着这个方向的一种努力。而Shefrin和Statman提出的行为投资组合理论

浅析悄然兴起的行为财务学

浅析行为财务学的几个问题 学院:会计学院 专业:08会计学 姓名:张霞 学号:Y0812*******

浅析行为财务学的几个问题 一、行为财务学的涵义 行为财务,目前尚未有一致的看法,从字面上理解,就是将人的心理活动行为结合到财务理论的研究中来。行为财务认为对经济现象的研究应从经济行为的发生、变化的内在心理机制以及心理活动特点和规律入手,探索一种经济现象与其它经济现象之间的必然联系,从而揭示经济现象的本质。行为财务就是在内外财务环境的作用下,通过财务目标的驱动,由财务主体运用现代行为科学、管理学原理及计量方法作用于财务客体,但同时又受客体影响和制约的具有能动性的、有目的的活动。行为财务的核心是财务主体的价值观念,这必然对财务信息的处理与流程管理产生影响,包括对人们的动机形成、生产水平、决策行为、利益分配的影响。 需要指出的是,行为财务不同于财务行为。财务行为是指“财务主体在其内部动因驱动和外在环境刺激下,按照财务目标的要求,遵循一定的行为规则,利用特有的理论和方法,对经济活动中的经济信息进行加工并适时传递的一种实践活动”。行为财务涉及的范围比财务行为宽得多,行为财务还要说明通过何种途径使得财务行为是这样而不是那样,这样或那样的经济信息对谁产生什么样的影响。在行为科学的影响下,行为财务不仅要对过去的财务行为进行适时控制,还对未来的财务行为进行预测和决策,从而实现全过程控制。 二、行为财务理论和现代财务理论的比较分析 (一)行为财务理论和现代财务理论的区别 1、假设基础不同。 基于价值管理的现代财务理论是建立在理性行为、资本资产定价模型和有效市场假说三个假设基础之上的。然而,大量的实践观察和实证研究表明,心理因素会干扰这三个基础。基于此,行为财务理论从两个方面对有效市场理论提出了质疑:人的完全理性;理性投资者的套利行为。因此,行为财务理论框架是从这两个方面构建的:从心理学、社会学、人类学的角度分析人的有限理性;套利行为的局限。 2、理论基础不同。

热力学第一定律(导)学案 (15)

第3节热力学第一定律能量守恒定律 课堂合作探究 问题导学 一、对热力学第一定律的理解 活动与探究1 1.一个物体,它既没有吸收热量也没有放出热量,那么:(1)如果外界对物体做的功为W,则它的内能如何变化?变化了多少?(2)如果物体对外界做的功为W,则它的内能如何变化?变化了多少? 2.一个物体,如果外界既没有对物体做功,物体也没有对外界做功,那么:(1)如果物体从外界吸收热量Q,它的内能如何变化?变化了多少?(2)如果向外界放出热量Q,它的内能如何变化?变化了多少? 3.如果物体在跟外界同时发生做功和热传递的过程中,内能的变化ΔU与热量Q及做的功W之间又有什么关系呢? 迁移与应用1 一定质量的气体从外界吸收了4.2×105 J的热量,同时气体对外界做了6×105 J的功,问: (1)物体的内能是增加还是减少?变化量是多少? (2)分子势能是增加还是减少? (3)分子的平均动能是增加还是减少? 热力学第一定律的应用应注意的问题 1.在应用过程中应特别分清W、Q的正负号,以便准确地判断ΔU的正、负。 2.符号法则 3.判断是否做功的方法 一般情况下外界对物体做功与否,需看物体的体积是否变化。 (1)若物体体积增大,表明物体对外界做功,W<0; (2)若物体体积变小,表明外界对物体做功,W>0。 4.应用热力学第一定律解题的一般步骤 (1)根据符号法则写出各已知量(W、Q、ΔU)的正负; (2)根据方程ΔU=W+Q求出未知量; (3)再根据未知量结果的正负来确定吸热、放热情况或做功情况。 二、能量守恒定律永动机 活动与探究2 1.能量可以由一种形式转化为另一种形式,也可以从一个物体转移到另一个物体。能量在转化或转移的过程中遵循什么规律呢? 2.什么是第一类永动机?第一类永动机违反了什么规律? 迁移与应用2 如图所示,一演示用的“永动机”转轮由5根轻杆和转轴构成,轻杆的末端装有用形状记忆合金制成的叶片。轻推转轮后,进入热水的叶片因伸展而“划水”,推动转轮转动。离开热水后,叶片形状迅速恢复,转轮因此能较长时间转动。下列说法正确的是()

《行政法学》第15章在线测试

《行政法学》第15章在线测试 《行政法学》第15章在线测试剩余时间:59:54 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、行政诉讼法的受案范围与行政复议法的受案范围相比() A、前者要广泛些 B、后者要广泛些 C、二者相同 D、二者无共同之处 2、根据我国《行政复议法》的规定,公民、法人或其他组织对民事纠纷的仲裁、调解或者处理不服的,不能申请行政复议。但下列哪种情况除外() A、继承权纠纷 B、干涉婚姻自主权的 C、房屋买卖行为 D、行政机关对土地、矿产、森林等资源所有权或使 用权归属的处理决定 3、乔某因不服县计划生育管理部门征收超生费的决定,向县人民政府申请复议,县人民政府维持了计划生育管理部门的决定。根据当地地方性法规的规定,公民对计划生育管理部门作出的征收超生费的决定不服,应当向本级人民政府申请复议,对复议决定不服的,再向上一级人民政府申请复议。乔某对县人民政府的复议决定不服应如何处理?() A、向地区行政公署申请复议和向人民法院提起诉讼 任选其一 B、再向地区行政公署申请复议 C、可以向人民法院提起行政诉讼 D、既不能申请复议,也不能提起诉讼 4、根据《行政复议法》的规定,行政复议申请人在对具体行政行为申请行政复议时,可以一并向行政复议机关提出申请,就该具体行政行为所依据的有关规定的合法性进行审查。这些规定不包括下列哪项?() A、国务院部门规定 B、国务院部、委员会规章和地方人民政府规章 C、乡、镇人民政府的规定 D、县级以上地方各级人民政府及其工作部门的规定 5、在下列哪种情形下,国务院可以成为复议机关() A、对国务院部门的具体行政行为不服的 B、对省、自治区、直辖市人民政府的具体行政行为 不服的 C、对国务院部门或者省、自治区、直辖市人民政府的具体行政行为不服的,向作出该具体行政行为的国务院 D、对国务院部门或者省、自治区、直辖市人民政府作出的抽象行政行为不服的

热力学第一定律

1.热力学第一定律 热力学第一定律的主要内容,就是能量守恒原理。能量可以在一物体与其他物体之间传递,可以从一种形式转化成另一种形式,但是不能无中生有,也不能自行消失。而不同形式的能量在相互转化时永远是数量相当的。这一原理,在现在看来似乎是顺理成章的,但他的建立却经历了许多失败和教训。一百多年前西方工业革命,发明了蒸汽机,人们对改进蒸汽机产生了浓厚的兴趣。总想造成不供能量或者少供能量而多做功的机器,曾兴起过制造“第一类永动机”的热潮。所谓第一类永动机就是不需供给热量,不需消耗燃料而能不断循环做工的机器。设计方案之多,但是成千上万份的设计中,没有一个能实现的。人们从这类经验中逐渐认识到,能量是不能无中生有的,自生自灭的。第一类永动机是不可能制成的,这就是能量守恒原理。到了1840年,由焦耳和迈尔作了大量试验,测量了热和功转换过程中,消耗多少功会得到多少热,证明了热和机械功的转换具有严格的不变的当量关系。想得到1J的机械功,一定要消耗0.239卡热,得到1卡热,一定要消耗4.184J的功,这就是著名的热功当量。1cal = 4.1840J 热功当量的测定试验,给能量守恒原理提供了科学依据,使这一原理得到了更为普遍的承认,牢牢的确立起来。至今,无论是微观世界中物质的运动,还是宏观世界中的物质变化都无一例外的符合能量守恒原理。把这一原理运用到宏观的热力学体系,就形成了热力学第一定律。2.热力学第二定律 能量守恒和转化定律就是热力学第一定律,或者说热力学第一定律是能量守恒和转化定律在热力学上的表现。它指明热是物质运动的一种形式,物质系统从外界吸收的热量等于这个能的增加量和它对外所作的功的总和。 也就是说想制造一种不消耗任何能量就能永远作功的机器,即“第一种永动机”,是不可能的。 人们继续研究热机效率问题,试图从单一热源吸取能量去制作会永远作功的机器,这种机器并不违背能量守恒定律,只需将热源降温而利用其能量推动机器不断运转。 这种机器就是“第二类永动机”。然而这种机器屡遭失败,不能成功,这就需要从理论上进一步探索。 前面说过,卡诺已经接近发现了热力学第一定律和热力学第二定律,但他受热质说的影响,不能把它们表述出来。 1850年,德国物理学家克劳胥斯在研究卡诺理论的基础上,提出“一个自行动作的机器,不可能把热从低温物体传到高温物体中去”。这就是热力学第二定律的“克劳胥斯表述”。1851年,英国物理学家威廉·汤姆生,即凯尔文勋爵也独立地从卡诺的工作中发现了热力学第二定律。 汤姆生,1824年生于英国贝尔发斯特城。父亲是皇家学院的数学教授,治学勤奋,对子女要求也很严格,1832年被聘到母校格拉斯哥大学任教,全家也迁往该城。 当这位新来的教授开始上第一堂课时,同学们发现教室多了两个漂亮的小男孩,也在津津有味地听着,他们就是8岁的汤姆生和他10岁的哥哥。 汤姆生10岁时,和哥哥正式进格拉斯哥大学预科学习,这可能是当时最小的大学生。汤姆生天资聪明,学习勤奋,表现出杰出的才能。15岁,他获得学校的物理学奖,第二年获天文学奖。17岁时,他在剑桥大学的数学杂志上发表了一篇论文,名震全校。 此后几年中,汤姆生发表了一连串的研究论文,内容包括数学、热力学和电学。 1846年,年仅22岁的汤姆生击败30多位教师候选人,获得了格拉斯哥大学的教授职位。1847年6月,焦耳在牛津大学举行的学术会议上,阐明机械能可以定量地转化为热能,各种形式的能都可以相互转化。 汤姆生出席了这次会议,他也是传统的热质说的拥护者,认为能量不可能转化,准备反驳焦

第一章热力学第一定律答案

第一章 热力学练习题参考答案 一、判断题解答: 1.错。对实际气体不适应。 2.错。数量不同,温度可能不同。 3.错。没有与环境交换能量,无热可言;天气预报的“热”不是热力学概念,它是指温度,天气很热,指气温很高。 4.错。恒压(等压)过程是体系压力不变并与外压相等,恒外压过程是指外压不变化,体系压力并不一定与外压相等。 5.错。一般吸收的热大于功的绝对值,多出部分增加分子势能(内能)。 6.错。例如理想气体绝热压缩,升温但不吸热;理想气体恒温膨胀,温度不变但吸热。 7.第一句话对,第二句话错,如理想气体的等温过程ΔU = 0,ΔH = 0,U 、H 不变。 8.错,两个独立变数可确定系统的状态只对组成一定的均相组成不变系统才成立。 9.错,理想气体U = f (T ),U 与T 不是独立的。描述一定量理想气体要两个独立变量。 10.第一个结论正确,第二个结论错,因Q+W =ΔU ,与途径无关。 11.错,Q V 、Q p 是过程变化的量、不是由状态决定的量,该式仅是数值相关而已。在一定条件下,可以利用ΔU ,ΔH 来计算Q V 、Q p ,但不能改变其本性。 12.错,(1)未说明该过程的非体积功W '是否为零; (2)若W ' = 0,该过程的热也只等于系统的焓变,而不是体系的焓。 13.对。因为理想气体热力学能、焓是温度的单值函数。 14.错,这是水的相变过程,不是理想气体的单纯状态变化,ΔU > 0。 15.错,该过程的p 环 = 0,不是恒压过程,也不是可逆相变,吸的热,增加体系的热力学能。吸的热少于30.87 kJ 。 16.错,在25℃到120℃中间,水发生相变,不能直接计算。 17.错,H = f (T ,p )只对组成不变的均相封闭系统成立,该题有相变。 18.错,Δ(pV )是状态函数的增量,与途径无关,不一定等于功。 19.错,环境并没有复原,卡诺循环不是原途径逆向返回的。 20.错,无限小过程不是可逆过程的充分条件。如有摩擦的谆静态过程。 21.错,若有摩擦力(广义)存在,有能量消耗则不可逆过程,只是准静态过程。 22.对。只有每一步都是可逆的才组成可逆过程。 23.对。() ()()12m ,121122n n 1T T C C C C T T R V p V p W V V V p -=--=--= γ。该公式对理想气体可逆、 不可逆过程都适用。 24.错,若是非理想气体的温度会变化的,如范德华气体。 25.错,该条件对服从pV m = RT + bp 的气体(钢球模型气体)也成立。 26.错,(?U /?V )p ≠(?U/?V )T ;(?U /?P )V ≠(?U/?V )T ,因此不等于零。 27.错,U = H -pV 。PV 不可能为零的。 28.错。CO 2在1000K 的标准摩尔生成焓可以由298K 标准摩尔生成焓计算出:由基尔霍夫定律得出的计算公式:

热力学第一定律习题解答

第13章 热力学第一定律 13.1 定容气体温度计的测温泡浸在水的三相点槽内时,其中气体的压强为6.7×103Pa 。 (1)当温度计测量300K 的温度时,气体的压强是多少?(2)当气体的压强为9.1×105Pa 时,待测温度是多少? 解:记温度计内气体在水的三相点时的压强为p tr. ,则有 T (p )=273.16K (p/p tr ) (1)由T (p )=273.16K(p/p tr ),有 p = K p T 16.273p )(tr =K Pa K 16.273107.63003??=7.358410?Pa (2) 由T (p )=273.16K(p/p tr ),有 T(p)= 273.16K (p/p tr )=Pa Pa K 35107.6101.916.273???=3.710K 410? 13.2 用定容气体温度计测得冰点的理想气体温度为273.15K ,试求温度计内的气体在冰点时的压强与该气体在水的三相点时压强之比的极限值。 解:由T (p )=273.16K(p/p tr ),有 0lim →tr p p/p tr =0lim →tr p K p T 16.273)(=0lim →tr p K K 16.27315.273=0.99996 13.3 一抽气机转速ω=400转/分,抽气机每分钟能抽出气体20l ,设容器的容积V =2.0l ,问经过多少时间才能使容器的压强由p 0=760mmHg 降到p t =10mmHg 。(设抽气过程温度不变) 解:依题意,抽气机每转抽出气体: 0V =40 20l=0.05l 由于T 不变,第一次抽出气体0V 前后:p 0V=p 1(V+0V ) 第二次抽出气体0V 前后:p 1V=p 2 (V+0V ) 第n 次抽出气体0V 前后:p 1-n V=p n (V+0V ) 以上各式,左右两边分别相乘得: n n n V V p V p )(00+= 故 n p p 0=n n 0V )V +(V 即 10 760=n n 2 2.05

热力学第一定律完整

热力学第一定律 摘要:热力学第一定律亦即能量转换与守恒定律,广泛地应用于各个学科领域。本文回顾了其建立的背景及经过,它的准确的文字表述和数学表达式,及它在理想气体、热机等方面的应用。 关键词:热力学第一定律能量转换理想气体 1.热力学第一定律的产生 1.1历史渊源与科学背景 人类使用热能为自己服务有着悠久的历史,火的发明和利用是人类支配自然力的伟大开端,是人类文明进步的里程碑。中国古代就对火热的本性进行了探讨,殷商时期形成的“五行说”——金、木、水、火、土,就把火热看成是构成宇宙万物的五种元素之一。 北宋时刘昼更明确指出“金性苞水,木性藏火,故炼金则水出,钻木而生火。”古希腊米利都学派的那拉克西曼德(Anaximander,约公元前611—547) 把火看成是与土、水、气并列的一种原素,它们都是由某种原始物质形成的世界四大主要元素。恩培多克勒(Empedocles,约公元前500—430)更明确提出四元素学说,认为万物都是水、火、土、气四元素在不同数量上不同比例的配合,与我国的五行说十分相似。但是人类对热的本质的认识却是很晚的事情。18世纪中期,苏格兰科学家布莱克等人提出了热质说。这种理论认为,热是由一种特殊的没有重量的流体物质,即热质(热素)所组成,并用以较圆满地解释了诸如由热传导从而导致热平衡、相变潜热和量热学等热现象,因而这种学说为当时一些著名科学家所接受,成为十八世纪热力学占统治地位的理论。 十九世纪以来热之唯动说渐渐地为更多的人们所注意。特别是英国化学家和物理学家克鲁克斯(M.Crookes,1832—1919),所做的风车叶轮旋转实验,证明了热的本质就是分子无规则动的结论。热动说较好地解释了热质说无法解释的现象,如摩擦生热等。使人们对热的本质的认识大大地进了一步。戴维以冰块摩擦生热融化为例而写成的名为《论热、光及光的复合》的论文,为热功相当提供了有相当说服力的实例,激励着更多的人去探讨这一问题。 1.2热力学第一定律的建立过程 在18世纪末19世纪初,随着蒸汽机在生产中的广泛应用,人们越来越关注

热力学第一定律习题及答案

热力学第一定律习题 一、单选题 1)如图,在绝热盛水容器中,浸入电阻丝,通电一段时间,通电后水及电阻丝的温度均略 有升高,今以电阻丝为体系有: () 绝热 A. W =0, Q <0, U <0 B. W <0, Q <0, U >0 C. W <0, Q <0, U >0 D. W <0, Q =0, U >0 2)如图,用隔板将刚性绝热壁容器分成两半,两边充入压力不等的空气 (视为理想气体), 已知P 右> P 左,将隔板抽去后:() n mol H 2O / 1 mol HC1 曲线上任一点均表示对应浓度时积分溶解热大小 H I 表示无限稀释积分溶解热 H 2表示两浓度n i 和%之间的积分稀释热 D.曲线上任一点的斜率均表示对应浓度时 HCI 的微分溶解热 7) H = Q p 此式适用于哪一个过程:() A. 理想气体从101325Pa 反抗恒定的10132.5Pa 膨胀到10132.5sPa B. 在0C 、101325Pa 下,冰融化成水 C. 电解CuS04的水溶液 D. 气体从(298K , 101325Pa )可逆变化到(373K , 10132.5Pa ) 8) 一定量的理想气体,从同一初态分别经历等温可逆膨胀、绝热可逆膨胀到具有相同压力 的终态,终态体积分别为 匕、V 2。() A. V 1 < V 2 B. V 1 = V 2 C. V 1 > V 2 D.无法确定 9) 某化学反应在恒压、 绝热和只作体积功的条件下进行, 体系温度由T i 升高到T 2,则此过 A. B. C. D. 空气 % 空气 Q = 0, W = U = 0 Q = 0, W U >0 Q >0, W U >0 U = 0, Q = W 0 对于理想气体,下列关系中哪个是不正确的: () (::U/ 汀)V = 0 B. (:U/::V )T = 0 C. C :H/_:P )T = 0 D. ( :U/::p )T = 凡是在孤立孤体系中进行的变化,其 U 和 H 的值- U H U = H = U H <0 U = 0, H 大于、小于或等于零不能确定。 在实际气体的节流膨胀过程中,哪一组描述是正确的 : r 曰 疋

1 热力学第一定律练习题答案

热力学第一定律练习题答案 一、判断题答案 1、× 2、√ 3、√ 4、√ 5、√, 6、× 7、× 8、× 9、√ 10、√,11、√ 12、× 13、× 14、√ 15、× 16、 × 17、 √ 18、√ 19、× 20、√ 二、选择题答案 1、(2) 2、(1) 3、(4) 4、(3) 5、( 3 ) 6、(1), 7、 (1) 8、 (2) 9、( 2 )10、(2) 11、 ( 1) 12、(3) 13、考虑到有效功W ’不一定为零,故( 1 )、( 2 )、( 3 )、均不完全。 ( 4 )循环过程?U = 0正确。 14、 ( 4 ) 15、 ( 4 ) 16、(3) 17、(1)18、(4) 19、( 2 ) ( 3 )20、 ( 4 ) 21、( 4 ) 22、( 1 ) 23、( 2 ) 三、填空题答案 1、热 力学 相 化学 2、愈大 愈大 3、解:分子本身大小可以略去不计 分子在没有接触时相互间没有作用力 4、解:?r H 1 — ?r H 2 5、nC V ,m ( T 2-T 1 ) 6、∑RT g B )(ν 7、H 2O(l),N 2(g) 8、 0 9、解: 1.24 kJ 10、解: -128.0 kJ·mol -1 -120.6 kJ·mol -1 11、解: 315 J 12、解: 减小 13、解: 范德华常数a ,b 临界参数 14、解: 无 无 无 15、解: pV /nRT 或 pV m /RT 难 16、解: = = = 17、解: > 18、解:(1) 气态 (2) 固态 (3) 斜方硫(固态) (4) 气态 19、解: 负 正 20、解:?H = ?U +( p 2V 2- p 1V 1 ) = ?U = 15 kJ Q = 50 kJ W = ( 15-50 ) kJ = -35 kJ 21、解: =

第1章 热力学第一定律

第一章热力学第一定律 思考题 1. 下列四个体系中,何种体系的能量在任意过程中都守恒:(1)封闭体系,(2)开放体系,(3)隔离体系,(4)绝热刚性容器中的体系。 解:(3)隔离体系。 2. 当体系的状态发生变化时,体系的状态函数的值都将发生变化?当体系经循环过程,其状态函数的值都不发生变化? 解:体系的状态发生变化时,体系的状态函数的值不一定都发生变化,例如理想气体的等温过程,ΔU=ΔH=0;当体系经循环过程,其状态函数的值在循环过程中可以改变,但其终态值不变。 3. 体系的始、终态确定后,在不同过程中的Q,W是否都具有确定的值?为什么?答:不能,因为Q与W都与过程有关。 4. 下列说法对吗?为什么? (1)在100 kPa和100℃时,1mol水蒸发为蒸气(假定蒸气为理想气体),因为此过程是等温过程,蒸气是理想气体,故ΔU = 0。 答: 错。发生了等温相变过程。ΔU = Q + W。此过程吸热,且液态水变成水蒸气时对抗外压作功,且二者数值不等,故ΔU>0。 (2)应N2(g)+3H2(g)2NH3(g),在100 kPa、298.15 K时进行,假设各气体均是理想气体,由于该反应是理想气体的等温过程,故ΔU = 0。 答: 错。该反应前后分子数目不同,且该反应具有热效应。 (3)因为ΔH =Q p,所以只有等压过程才有ΔH。 答: 错,等压过程ΔH =Q p,非等压过程有ΔH。 (4)因为ΔH =Q p,所以Q p也具有状态函数的性质。 答: 错,ΔH =Q p,ΔU=Q v,只是数值上的相等。Q p,Q v,并不具备状态函数的性质。 5. 推断下列各过程的Q、W、ΔU、ΔH的正负号:(1)固态萘在正常熔点下熔化,(2)理想气体等温膨胀,(3)理想气体向真空等温膨胀,(4)萘在一个用刚性的绝热壁封起来的容器内燃烧,(5)第(4)题中的刚性壁是不绝热的。

热力学第一定律 能量守恒 每课一练 (15)

热力学第一定律的理解和应用 1.(2013山东烟台)关于内能的变化,以下说法正确的是 ().A.物体吸收热量,内能一定增大 B.物体对外做功,内能一定减少 C.物体吸收热量,同时对外做功,内能可能不变 D.物体放出热量,同时对外做功,内能可能不变 解析根据热力学第一定律,ΔU=W+Q,物体内能的变化与做功及热传递两个因素均有关,物体吸收热量,内能也不一定增大,因为物体可能同时对外做功,故内能有可能不变或减少,A错,物体对外做功,还有可能吸收热量、内能可能不变或增大,B错、C正确;放出热量,同时对外做功,内能一定减少,D错误. 答案 C 2.若将气泡内的气体视为理想气体,气泡从湖底上升到湖面的过程中,对外界做了0.6 J的功,则此过程中气泡________(填“吸收”或“放出”)的热量是____J,气泡到达湖面后,温度上升的过程中,又对外界做了0.1 J的功,同时吸收了0.3 J的热量,则此过程中,气泡内气体内能增加了____J. 解析将气体视为理想气体时,其内能只与温度有关,气泡上升过程中温度不变,ΔU=0,对外做功,W=-0.6 J,由ΔU=Q+W有Q=ΔU-W=0.6 J>0,即需从外界吸收0.6 J的热量,气泡到达湖面后,由ΔU=Q+W得,ΔU=(0.3-0.1) J=0.2 J. 答案吸收0.60.2 能量守恒定律的理解和应用 3.自由摆动的秋千摆动幅度越来越小,下列说法正确的是 ().

A.机械能守恒 B.能量正在消失 C.只有动能和重力势能的相互转化 D.减少的机械能转化为内能,但总能量守恒 解析自由摆动的秋千摆动幅度减小,说明机械能在减少,减少的机械能等于克服阻力、摩擦力做的功增加了内能. 答案 D 能的转化与守恒的综合应用 4.[2011·福建理综,28(2)]一定量的理想气体在某一过程中,从外界吸收热量 2.5×104J,气体对外界做功1.0×104J,则该理想气体的(). A.温度降低,密度增大B.温度降低,密度减小 C.温度升高,密度增大D.温度升高,密度减小 解析由ΔU=W+Q可得理想气体内能变化ΔU=-1.0×104J+2.5×104J =1.5×104 J>0,故温度升高,A、B两项均错.因为气体对外做功,所以气体一定膨胀,体保变大,由ρ=m 可知密度变小,故C项错误.D项正确. V 答案 D

热力学第一定律习题及答案

热力学第一定律习题 一、单选题 1) 如图,在绝热盛水容器中,浸入电阻丝,通电一段时间,通电后水及电阻丝的温度均略有升高,今以电阻丝为体系有:( ) A. W =0,Q <0,U <0 B. W <0,Q <0,U >0 C. W <0,Q <0,U >0 D. W <0,Q =0,U >0 2) 如图,用隔板将刚性绝热壁容器分成两半,两边充入压力不等的空气(视为理想气体),已知p右> p左,将隔板抽去后: ( ) A. Q=0, W =0, U =0 B. Q=0, W <0, U >0 C. Q >0, W <0, U >0 D. U =0, Q=W0 3)对于理想气体,下列关系中哪个是不正确的:( ) A. (?U/?T)V=0 B. (?U/?V)T=0 C. (?H/?p)T=0 D. (?U/?p)T=0 4)凡是在孤立孤体系中进行的变化,其U 和H 的值一定是:( ) A. U >0, H >0 B. U =0, H=0 C. U <0, H <0 D. U =0,H 大于、小于或等于零不能确定。 5)在实际气体的节流膨胀过程中,哪一组描述是正确的: ( ) A. Q >0, H=0, p < 0 B. Q=0, H <0, p >0 C. Q=0, H =0, p <0 D. Q <0, H =0, p <0 6)如图,叙述不正确的是:( ) A.曲线上任一点均表示对应浓度时积分溶解热大小 B.H1表示无限稀释积分溶解热 C.H2表示两浓度n1和n2之间的积分稀释热 D.曲线上任一点的斜率均表示对应浓度时HCl的微分溶解热 7)H=Q p此式适用于哪一个过程: ( ) A.理想气体从101325Pa反抗恒定的10132.5Pa膨胀到10132.5sPa B.在0℃、101325Pa下,冰融化成水 C.电解CuSO4的水溶液 D.气体从(298K,101325Pa)可逆变化到(373K,10132.5Pa ) 8) 一定量的理想气体,从同一初态分别经历等温可逆膨胀、绝热可逆膨胀到具有相同压力的终态,终态体积分别为V1、V2。( ) A. V1 < V2 B. V1 = V2 C. V1 > V2 D. 无法确定 9) 某化学反应在恒压、绝热和只作体积功的条件下进行,体系温度由T1升高到T2,则此过程的焓变H:( ) A.小于零 B.大于零 C.等于零 D.不能确定 10) 对于独立粒子体系,d U=n i d i+ i d n i,式中的第一项物理意义是: ( ) A. 热 B. 功 C. 能级变化 D. 无确定意义 11) 下述说法中哪一个正确:( ) A.热是体系中微观粒子平均平动能的量度 B.温度是体系所储存能量的量度 C.温度是体系中微观粒子平均能量的量度 D.温度是体系中微观粒子平均平动能的量度 12) 下图为某气体的p-V图。图中A→B为恒温可逆变化,A→C为绝热可逆变化,A→D 为多方不可逆变化。B, C, D态的体积相等。问下述个关系中哪一个错误?( ) A. T B > T C B. T C > T D C. T B > T D D. T D > T C 13) 理想气体在恒定外压p下从10dm3膨胀到16dm3, 同时吸热126J。计算此气体的 U。( ) A. -284J B. 842J C. -482J D. 482J 14) 在体系温度恒定的变化过程中,体系与环境之间:( ) A.一定产生热交换 B.一定不产生热交换 C.不一定产生热交换 D. 温度恒定与热交换无关

热力学第一定律

第二章 热力学第一定律 思考题 1 设有一电炉丝浸于水中,接上电源,通过电流一段时间。如果按下列几种情况作为系统,试问ΔU ,Q ,W 为正为负还是为零? (1)以电炉丝为系统; (2)以电炉丝和水为系统; (3)以电炉丝、水、电源及其它一切有影响的部分为系统。 2 设有一装置如图所示,(1)将隔板抽去以后,以空气为系统时,ΔU ,Q ,W 为正为负还是为零?(2)如右方小室亦有空气,不过压力较左方小,将隔板抽去以后,以所有空气为系统时,ΔU ,Q ,W 为正为负还是为零? 作业题 1 (1)如果一系统从环境接受了160J 的功,内能增加了200J ,试问系统将吸收或是放出多少热?(2)一系统在膨胀过程中,对环境做了10 540J 的功,同时吸收了27 110J 的热,试问系统的内能变化为若干? [答案:(1) 吸收40J ;(2) 16 570J] 2 在一礼堂中有950人在开会,每个人平均每小时向周围散发出4.2xl05J 的热量,如果以礼堂中的空气和椅子等为系统,则在开会时的开始20分钟内系统内能增加了多少?如果以礼堂中的空气、人和其它所有的东西为系统,则其ΔU =? [答案:1.3×l08J;0] 3 一蓄电池其端电压为12V ,在输出电流为10A 下工作2小时,这时蓄电池的内能减少了1 265 000J ,试求算此过程中蓄电池将吸收还是放出多少热? [答案:放热401000J] 4 体积为4.10dm 3的理想气体作定温膨胀,其压力从106Pa 降低到105Pa,计算此过程所能作出的最大功为若干? [答案:9441J] 5 在25℃下,将50gN 2作定温可逆压缩,从105Pa 压级到2×106Pa ,试计算此过程的功。如果被压缩了的气体反抗恒定外压105Pa 作定温膨胀到原来的状态,问此膨胀过程的功又为若干? [答案:–1.33×104J ;4.20×103J] 6 计算1mol 理想气体在下列四个过程中所作的体积功。已知始态体积为25dm 3终态体积为100dm 3;始态及终态温度均为100℃。 (1)向真空膨胀; (2)在外压恒定为气体终态的压力下膨胀; (3)先在外压恒定为体积等于50dm 3时气体的平衡压力下膨胀,当膨胀到50dm 3(此时温度仍为100℃)以后,再在外压等于100 dm 3时气体的平衡压力下膨胀; (4)定温可逆膨胀。 试比较这四个过程的功。比较的结果说明了什么问题? [答案:0;2326J ;310l J ;4299J] 习题10 试证明对遵守范德华方程的1mol 实际气体来说,其定温可逆膨胀所作的功可用下式求算。 (范德华方程为()V =m 2a p b RT V m ?? ?+- ?? ?) 习题11 假设CO 2遵守范德华方程,试求算1mol CO 2在27℃时由10dm 3定温可逆压缩到1dm 3所作的功。(所需范德华常数自己查表)。 [答案:—5 514J] 习题12 1mol 液体水在100℃和标准压力下蒸发,试计算此过程的体积功。 (1)已知在100℃和标准压力下,水蒸气的比体积(体积除以质量)为 1 677cm 3·g -1,水的比体积为

相关主题
文本预览
相关文档 最新文档