当前位置:文档之家› fluent UDF第六章 工具

fluent UDF第六章 工具

fluent UDF第六章 工具
fluent UDF第六章 工具

6. Utilities (工具)

本章提供了针对FLUENT变量性能计算的FLUENT公司提供的预处理工具列表。

? 6.1 Introduction 简要

? 6.2 General-Purpose Looping Macros

?一般目的的宏

? 6.3 Multiphase-Specific Looping Macros

?多项组分的宏

? 6.4 Setting Face Variables ( F_PROFILE) 设置面变量

? 6.5 Accessing Variables That Are Not Passed as Arguments

?访问没有作为Argument传递的变量

? 6.6 Accessing Neighboring Cell and Thread Variables

访问邻近单元(网格点和线)上的变量

? 6.7 User-Defined Memory for Cells ( C_UDMI)

用户为网格定义内存(C-UDMI)

? 6.8 Vector Utilities

矢量工具

? 6.9 Macros for Time-Dependent Simulations

与时间相关的数值模拟宏

? 6.10 Miscellaneous Utilities

其他各种工具

6.1简要

Fluent Inc.提供了针对Fluent变量操作的一系列工具。这些工具中大部分可以作为宏直接执行。

许多宏可以用于单相和多相模型的UDFs中,但是有些是只针对多相流的。回想一下当你为多相流模型写UDFs时,你将记住FLUENT的结构的层次。(详细参考3.11.1)。

从求解器中导入到你的UDFs中特殊的控制区和线性结构,依赖于你所使用的DEFINE宏和相关的控制区函数。(通过图形用户界面和用户定义的源代码)

它或许也依赖于你所使用的多相流模型。将控制区的结构传递给DEFINE_INIT 和

DEFINE_ADJUST 函数,但是它与多相流模型是相互独立的。这些函数始终被传递给与混合物有关的控制区结构。DEFINE_ON_DEMAND UDFs没有被传递给任何控制区。

如果你的PDF没有显式地传给你的函数所需要的线性的或者控制区的结构,那么你可以利用本章提供的宏工具修复。提供的许多宏使你的函数可以寻找到给定线和区的所有的网格点和面。

6.2一般目的的循环宏

下面这些循环的宏可以用于FLUENT单相和多相模型的UDFs中。这些宏的定义包含再mem.h 头文件中。

? 6.2.1 Looping over Cell Threads in a Domain ( thread_loop_c)

?查询控制区的单元线

? 6.2.2 Looping over Face Threads in a Domain ( thread_loop_f)

?查询控制区的面

? 6.2.3 Looping over Cells in a Cell Thread ( begin...end_c_loop)

?查询单元线中的单元

? 6.2.4 Looping over Faces in a Face Thread ( begin...end_f_loop)

?查询面单元中的面

? 6.2.5 Looping over Faces on a Cell ( c_face_loop)

?查询单元面

? 6.2.6 Looping over Nodes of a Cell ( c_node_loop)

?查询单元节点

6.2.1查询控制区的单元线

当你想查询给定控制区的单元线时,你可以用thread_loop_c。它包含单独的说明,后面是对控制区的单元线所做操作,正如下面显示的包含在{ }中。注意:thread_loop_c在执行上和thread_loop_f相似,参考6.2.2部分。

Domain *domain;

Thread *c_thread;

thread_loop_c(c_thread, domain) /*loops over all cell threads in domain*/

{

}

6.2.2查询控制区的面

当你想要查询给定控制区的面时,你可以应用thread_loop_f。它包含单独的说明,后面是对控制区的面单元所做操作,正如下面显示的包含在{ }中。注意:thread_loop_f在执行上和thread_loop_c相似,参考6.2.1部分。

Thread *f_thread;

Domain *domain;

thread_loop_f(f_thread, domain)/* loops over all face threads in a domain*/

{

}

6.2.3 查询单元线中的单元

当你想要查询给定单元线c_thread上所有的单元时,你可以应用begin_c_loop和end_c_loop。它包含begin 和 end loop的说明,完成对单元线中单元所做的操作,定义包含在{ }中。当你想查找控制区单元线的单元时,应用的loop全嵌套在thread_loop_c中。

cell_t c;

Thread *c_thread;

begin_c_loop(c, c_thread) /* loops over cells in a cell thread */

{

}

end_c_loop(c, c_thread)

例子:

/* Loop over cells in a thread to get information stored in cells. */

begin_c_loop(c, c_thread)

{

/* C_T gets cell temperature. The += will cause all of the cell

temperatures to be added together. */

temp += C_T(c, c_thread);

}

end_c_loop(c, c_thread)

}

6.2.4查询面线中的面

当你想要查找给定面线f_thread的所有的面时,你可以用begin_f_loop and end_f_loop。它包含begin 和 end loop的说明,完成对面线中面单元所做的操作,定义包含在{ }中。当你想查找控制区面线的所有面时,应用的loop全嵌套在thread_loop_f中。

face_t f;

Thread *f_thread;

begin_f_loop(f, f_thread) /* loops over faces in a face thread */

{

}

end_f_loop(f, f_thread)

例子:

/* Loop over faces in a face thread to get the information stored on faces. */

begin_f_loop(f, f_thread)

{

/* F_T gets face temperature. The += will cause all of the face

temperatures to be added together. */

temp += F_T(f, f_thread);

}

end_f_loop(f, f_thread)

6.2.5 查询单元中的面

下面函数用以查询给定单元中所有面。包含单独的查询说明,后面是所做的操作包含在{}。

face_t f;

Thread *tf;

int n;

c_face_loop(c, t, n) /* loops over all faces on a cell */

{

.

.

.

f = C_FACE(c,t,n);

tf = C_FACE_THREAD(c,t,n);

.

.

.

}

这里,n是当地面的索引号。当地面的索引号用在C_FACE宏中以获得所有面的数量(e.g., f = C_FACE(c,t,n))。

另一个在c_face_loop中有用的宏是C_FACE_THREAD。这个宏用于合并两个面线。

(e.g., tf = C_FACE_THREAD(c,t,n)).

查找与 c_face_loop有关的宏参考 6.10部分。

6.2.6查询单元节点( c_node_loop)

下面函数用以查询给定单元中所有节点。包含单独的查询说明,后面是所做的操作包含在{}。cell_t c;

Thread *t;

int n;

c_node_loop(c, t, n)

{

.

.

.

node = C_NODE(c,t,n);

.

.

.

}

这里,n是当地节点的索引号。当地面的索引号用在C_NODE宏中以获得所有面的数量((e.g., node = C_NODE(c,t,n)

6.3多相组分查询宏

下面这些宏用于多相模型的UDFs。关于FLUENT里的结构的层次的讨论参考3.11部分尤其是图3.11.1。

? 6.3.1 Looping over Phase Domains in a Mixture ( sub_domain_loop)

?查询混合物中的相控制区

? 6.3.2 Looping over Phase Threads in a Mixture ( sub_thread_loop)

?查询混合物中的相线

? 6.3.3 Looping over Phase Cell Threads in a Mixture ( mp_thread_loop_c) ?查询混合物中的相单元线

? 6.3.4 Looping over Phase Face Threads in a Mixture ( mp_thread_loop_f)

查询混合物中的相的面线

6.3.1 Looping over Phase Domains in a Mixture

6.3.1查询混合物中相的控制区( sub_domain_loop)

sub_domain_loop 宏用于查询混合物控制区的所有相的子区。这个宏查询并在混合物控制区给每个相区定义指针以及相关的phase_domain_index。正如3.11部分所讨论的,控制区需要指针,在每个相中都有权访问部分数据。注意:sub_domain_loop宏在执行中和

sub_thread_loop宏是相似的,参考6.3.2部分。

int phase_domain_index; */ index of subdomain pointers */

Domain *mixture_domain;

Domain *subdomain;

sub_domain_loop(subdomain, mixture_domain, phase_domain_index)

sub_domain_loop的变量是subdomain,mixture_domain和phase_domain_index。

Subdomain是phase-level domain的指针, mixture_domain 是 mixture-level domain的指针。当你想用DEFINE宏时,mixture_domain(包含控制区变量e.g., DEFINE_ADJUST)通过FLUENT求解器自动传递给你的UDF,混合物就和你的UDF相关了。如果

mixture_domain 没有显式地传递给你的UDF,你应用另外一个宏来恢复它 (e.g.,

Get_Domain(1) before calling sub_domain_loop (参考 6.5.1部分)。 phase_domain_index 是子区指针所引号, phase_domain_index 是初始相地索引号为0,混合物中其它相依次加1。注意:subdomain 和phase_domain_index 是在 sub_domain_loop 宏定义中初始化的。

例子:

下列被集成在UDF中的语句在求解过程中补充说明一个相的体积分数。它在求解过程的开始执行。这个函数建立一个中心在0.5, 0.5, 0.5,半径为0.25的球形体。第二个相的体积分数1被补充说明到球形体内的单元中,但是第二个相在其他单元中的体积分数为0。

/*****************************************************************/

/* UDF for initializing phase volume fraction */

/*****************************************************************/

#include "udf.h"

/* domain pointer that is passed by INIT function is mixture domain */

DEFINE_INIT(my_init_function, mixture_domain)

{

int phase_domain_index;

cell_t cell;

Domain *subdomain;

real xc[ND_ND];

/* loop over all subdomains (phases) in the superdomain (mixture) */

sub_domain_loop(subdomain, mixture_domain, phase_domain_index)

{

/* loop if secondary phase */

if (DOMAIN_ID(subdomain) == 2)

/* loop over all cell threads in the secondary phase domain */

thread_loop_c (cell_thread,subdomain)

{

/* loop over all cells in secondary phase cell threads */

begin_c_loop_all (cell,cell_thread)

{

C_CENTROID(xc,cell,cell_thread);

if (sqrt(ND_SUM(pow(xc[0] - 0.5,2.),

pow(xc[1] - 0.5,2.),

pow(xc[2] - 0.5,2.))) < 0.25)

/* set volume fraction to 1 for centroid */

C_VOF(cell,cell_thread) = 1.;

else

/* otherwise initialize to zero */

C_VOF(cell,cell_thread) = 0.;

}

end_c_loop_all (cell,cell_thread)

}

}

}

6.3.2 查询混合物的相线 ( sub_thread_loop)

sub_thread_loop宏查询所有与混合物等值线相的等值线。这个宏查找并返回每个子区和相关phase_domain_index的指针。

如 3.11部分所讨论的, 如果 subthread 指针与进口区域相关,那么这个宏将提供给进口区域每个相面线指针。

int phase_domain_index;

Thread *subthread;

sub_thread_loop(subthread, mixture_thread, phase_domain_index)

sub_thread_loop的自变量是subthread, mixture_thread, 和phase_domain_index。subthread 是相线的指针, mixture_thread 是 mixture-level thread的指针。当你用DEFINE宏(包含一个线自变量)时,通过FLUENT的求解器 mixture_thread自动传递给你的UDF,你的UDF就和混合物相关了。如果 mixture_thread 没有显式地传递给你的UDF,你需要在调用sub_thread_loop之前,调用工具宏恢复它。phase_domain_index 是子区指针索引号,可以用宏PHASE_DOMAIN_INDEX恢复。(详情参考 6.5.9部分) 初始相的索引号为0,混合物中其它相依次加一。注意: subthread 和phase_domain_index 在 sub_thread_loop 宏定义中被初始化。

6.3.3 查询混合物中所有单元的线( mp_thread_loop_c)

mp_thread_loop_c 宏查询混合物控制区所有单元的线,提供了与混合物等值线有关的相等值线的指针。当应用到混合物控制区时这几乎和thread_loop_c 宏是等价的。 ( 6.2.1部分) 区别是:除了查询每个单元线,它还返回一个指针数组( pt) 等价与相等值线。单元线第i相的指针是pt[i],这里i是相控制区索引号phase_domain_index。pt[i] 可以用做宏的自变量。需要相等值线的指针。相控制区索引号 phase_domain_index 可以用宏

PHASE_DOMAIN_INDEX 恢复 (详情参考6.5.9部分)。

Thread **pt;

Thread *cell_threads;

Domain *mixture_domain;

mp_thread_loop_c(cell_threads, mixture_domain, pt)

mp_thread_loop_c的自变量是cell_threads, mixture_domain ,pt. cell_threads 是网格线的指针,mixture_domain 是mixture-level控制区的指针,. pt 是含有phase-level 线的指针数组。

当你要用包含控制区变量(e.g., DEFINE_ADJUST的宏DEFINE时,mixture_domain 通过FLUENT的求解器自动传递给你的UDF文件,你的UDF就和混合物相关了。若mixture_domain 没有显式地传递给你UDF文件,你应用另外一个工具(e.g., Get_Domain(1)来恢复,参考6.5.1部分。注意: pt 和 cell_threads 的值是由查询函数派生出来的。mp_thread_loop_c 是典型的用于begin_c_loop中。 begin_c_loop 查询网格线内的所有网格。当begin_c_loop 嵌套在 mp_thread_loop_c中,你就可以查询混合物中相单元线的所有网格了。

6.3.4查询混合物中所有的相面线( mp_thread_loop_f)

宏mp_thread_loop_f 查询混合物控制区内所有混合物等值线的面线并且给每个与混合物等值线有关的相等值线指针。在混合物控制区内这和宏thread_loop_f几乎是等价的。区别是:除了查找每一个面线,这个宏还返回一个指针数组pt,它与相等值线相互关联。指向第i

相的面线指针是 pt[i], 这里是 phase_domain_index。当需要相等值线指针时,pt[i] 可以作为宏的自变量。phase_domain_index 可以用宏 PHASE_DOMAIN_INDEX恢复。 (参考

6.5.9)

Thread **pt;

Thread *face_threads;

Domain *mixture_domain;

mp_thread_loop_f(face_threads, mixture_domain, pt)

mp_thread_loop_f 的自变量是face_threads, mixture_domain, 和 pt。 face_threads 是面线的指针,是混合物等值线控制区的指针。pt 是包含相等值线的指针数组。

当你要用包含控制区变量(e.g., DEFINE_ADJUST的宏DEFINE时,mixture_domain 通过FLUENT的求解器自动传递给你的UDF文件,你的UDF就和混合物相关了。若mixture_domain 没有显式地传递给你UDF文件,你应用另外一个工具(e.g., Get_Domain(1)来恢复,参考6.5.1部分。注意: pt 和 cell_threads 的值是由查询函数派生出来的。mp_thread_loop_f 是典型的用于begin_f_loop中。 begin_f_loop 查询网格线内的所有网格。当begin_f_loop 嵌套在 mp_thread_loop_f中,你就可以查询混合物中相单元线的所有网格了。

6.4 Setting Face Variables ( F_PROFILE)

6.4设置面变量

当你要设置面的变量的值时,应用F_PROFILE宏。当你要生成边界条件的外形或存储新的变量值时,自动调用这一函数。F_PROFILE全部宏定义参考mem.h文件。.

宏:F_PROFILE( f, t, n)

自变量:face_t f

Thread *t

int n

函数返回值: void

F_PROFILE的自变量是f, 面的索引号是face_t; t, 面上线的指针,还有一个整数 n。这

些变量通过FLUENT的求解器自动传递给你的UDF。你不必给他们赋值。整数n是要在边界

上设定的变量标志符。例如:进口边界包含总压和总温,二者都在用户定义函数中定义。进口边界的变量在FLUENT赋予整数0,其它赋予1。当你在FLUENT的进口边界面板中定义边界条件时,这些整数值由求解器设定。

6.5访问没有赋值的自变量

针对单相和多相的模型(比如定义源项,性质和外形),大多数标准的UDF,你的函数所需

要的变量(e.g., domain or thread pointers)在求解过程中通过求解器自动做为自变量直接传递给你的UDF。例如,如果你的UDF定义了特殊边界区域(使用 DEFINE_PROFILE)的外形,在FLUENT的边界条件面板中,你的UDF就和相和混合物相关联了,在执行时通过求解器,合适的相和混合物变量传递给你的函数。然而,并非所有的UDF都直接把函数所需要的自变量

传递给求解器。回想一下,例如DEFINE_ADJUST 和DEFINE_INIT UDFs 传递给混合物控制区变量,这里DEFINE_ON_DEMAND UDFs 是没有被传递的自变量。这部分提供了通过DEFINE函

数访问没有被直接传递给UDF文件的工具。

? 6.5.1 Get_Domain

?获得控制区

? 6.5.2 Phase Domain Pointer Using the Phase Domain Index ( DOMAIN_SUB_DOMAIN) ?通过相控制区索引号使用相控制区指针

? 6.5.3 Phase-Level Thread Pointer Using the Phase Domain Index ( THREAD_SUB_THREAD)

?通过相控制区索引号使用相等值线指针

? 6.5.4 Phase Thread Pointer Array Using Mixture-Level Thread

( THREAD_SUB_THREADS)

?通过混合物等值线使用相线指针数组

? 6.5.5 Mixture Domain Pointer Using a Phase Domain Pointer

( DOMAIN_SUPER_DOMAIN)

?通过相控制区指针调用混合物控制区指针

? 6.5.6 Mixture Thread Pointer Using a Phase Thread Pointer

( THREAD_SUPER_THREAD)

?通过相线指针使用混合物线指针

? 6.5.7 Thread Pointer Using a Zone ID ( Lookup_Thread)

?通过控制区ID使用线指针

? 6.5.8 domain_id Using a Phase Domain Pointer ( DOMAIN_ID)

?通过相控制区指针使用控制区ID

? 6.5.9 Phase Domain Index Using a Phase Domain Pointer ( PHASE_DOMAIN_INDEX) ?通过相控制区指针使用相控制区索引号

6.5.1 Get_Domain

若控制区指针没有显式地作为自变量传递给你地UDF,你可以用Get_Domain宏恢复控制区指针。

Get_Domain(domain_id);

domain_id 是一个整数,混合物控制区其值为1,在多相混合物模型中其值依次加一。注意:Get_Domain(1) 来代替以前的FLUENT版本中外部变量Domain *domain表达式。 (参见1.4部分)

Single-Phase Flows

单相流

在单相流中, domain_id 为 1 , Get_Domain(1) 将放回流体控制区指针。

DEFINE_ON_DEMAND(my_udf)

{

Domain *domain; /* domain is declared as a variable */

domain = Get_Domain(1); /* returns fluid domain pointer */

...

}

Multiphase Flows

多相流

在多相流中,Get_Domain的返回值或者是混合物等值线,或单相等值线,或相等值线或相等值线控制区指针。domain_id的值在混合物控制区始终是一,你可以用FLUENT里的图形用户界面获得domain_id。简单的说,在FLUENT的相面板中,选择所需的相。domain_id 将被显示出来。你需要用硬件代码整数ID作为自变量传递给宏。

DEFINE_ON_DEMAND(my_udf)

{

Domain *mixture_domain;

mixture_domain = Get_Domain(1); /* returns mixture domain pointer */

/* and assigns to variable */

Domain *subdomain;

subdomain = Get_Domain(2); /* returns phase with ID=2 domain pointer*/

/* and assigns to variable */

...

}

例子:

下面是一个名为get_coords的UDF打印出了为两个指定的线ID面的线面的质心。这一函数执行在单相流中用的Get_Domain工具。在这个例子中,函数Print_Thread_Face_Centroids 用了Lookup_Thread函数来决定线的指针,然后输出了具体文件中线的所有的面的质心。调用Get_Domain(1) 函数返回控制区的指针 (或在多相流中是混合物控制区)。这一变量没有被传递给 DEFINE_ON_DEMAND。

/*****************************************************************/

/* Example of UDF for single phase that uses Get_Domain utility */

/*****************************************************************/

#include "udf.h"

FILE *fout;

Print_Thread_Face_Centroids(Domain *domain, int id)

{

real FC[2];

face_t f;

Thread *t = Lookup_Thread(domain, id);

fprintf(fout,"thread id %d\n", id);

begin_f_loop(f,t)

{

F_CENTROID(FC,f,t);

fprintf(fout, "f%d %g %g %g\n", f, FC[0], FC[1], FC[2]);

}

end_f_loop(f,t)

fprintf(fout, "\n");

}

DEFINE_ON_DEMAND(get_coords)

{

Domain *domain;

domain = Get_Domain(1);

fout = fopen("faces.out", "w");

Print_Thread_Face_Centroids(domain, 2);

Print_Thread_Face_Centroids(domain, 4);

fclose(fout);

}

6.5.2 Phase Domain Pointer Using the Phase Domain Index ( DOMAIN_SUB_DOMAIN)

6.5.2通过相控制区索引号使用相控制区指针

有两个方法可以获得混合物控制区具体相(或子区)的指针。你或者可以用宏

DOMAIN_SUB_DOMAIN (在下面描述)或 Get_Domain, 在6.5.1部分描述。

DOMAIN_SUB_DOMAIN 有两个自变量: mixture_domain 和 phase_domain_index。

这个函数返回给定phase_domain_index 的相指针。注意:DOMAIN_SUB_DOMAIN 在执行上和THREAD_SUB_THREAD宏相似。(在6.5.3.部分描述)

int phase_domain_index = 0; /* primary phase index is 0 */

Domain *mixture_domain;

Domain *subdomain = DOMAIN_SUB_DOMAIN(mixture_domain,phase_domain_index);

mixture_domain是 mixture-level domain的指针。

当你用包含控制区自变量(e.g., DEFINE_ADJUST) and的宏DEFINE时,自动通过FLUENT的求解器传递给你的UDF文件,你的UDF文件就和混合物相关联了。否则,如果mixture_domain 没有显式地传递给你的UDF,你需要在调用sub_domain_loop之前,用另外一个宏工具来恢复(e.g., Get_Domain(1)) 。参见 6.5.1 部分。

phase_domain_index是子区指针地索引号。它是一个整数初始相值为0,以后每相依次加1。当你用包含相控制区变量( DEFINE_EXCHANGE_PROPERTY, DEFINE_VECTOR_EXCHANGE_PROPERTY)的 DEFINE宏时,phase_domain_index 是自动通过FLUENT的求解器传递给你的UDF,你的UDF就和互相作用的相相联系了。否则,你需要硬代码调用DOMAIN_SUB_DOMAIN 宏给phase_domain_index 指针赋值。如果你的多相流模型有两相,然后phase_domain_index 初始相的值是0,第二相的值为1。然而,如果多相流模型中有更多的相,你需要用PHASE_DOMAIN_INDEX宏来恢复与给定控制区的phase_domain_index。详情参考 6.5.9 部分。

6.5.3 Phase-Level Thread Pointer Using the Phase Domain Index ( THREAD_SUB_THREAD)

6.5.3通过相控制区索引号使用相等值线指针

THREAD_SUB_THREAD宏可以用来恢复给定相控制区索引号的phase-level thread (subthread) 指针。 THREAD_SUB_THREAD有两个自变量: mixture_thread 和 phase_domain_index。这

一函数返回给定phase_domain_index 的phase-level 线指针。注意:THREAD_SUB_THREAD

在执行上与DOMAIN_SUB_DOMAIN宏相似,参见6.5.2.部分。

int phase_domain_index = 0; /* primary phase index is 0 */

Thread *mixture_thread; /* mixture-level thread pointer */

Thread *subthread = THREAD_SUB_THREAD(mixture_thread,phase_domain_index);

mixture_thread是一mixture-level线的指针。当你用包含控制区自变量(e.g., DEFINE_ PROFILE) and的宏DEFINE时,自动通过FLUENT的求解器传递给你的UDF文件,你的UDF文件就和混合物相关联了。否则,如果混合物控制线指针没有显式地传递给你的UDF,你需要在调用Lookup_Thread宏之前,用另外一个宏工具来恢复(e.g., Get_Domain(1)) 。参

见 6.5.1 部分。参考 6.5.7部分)。

phase_domain_index子区指针的索引号。它是一个整数初始相值为0,以后每相依次加1。当你要用包含相控制区索引号变量( DEFINE_EXCHANGE_PROPERTY, DEFINE_VECTOR_EXCHANGE_PROPERTY)的DEFINE宏时, phase_domain_index 通过FLUENT的求解器自动传递给你的UDF,你的UDF就和具体的相互作用相相互关联了。 (参考UDF的例子见 4.4.2 部分) 否则,你需要用硬代码改变宏THREAD_SUB_THREAD的phase_domain_index值。如果你的多相流模型中只有两相,那么phase_domain_index 对初始相是0,第二个相为1。然而,如果你有更多的相,你需要用 PHASE_DOMAIN_INDEX 宏来恢复与给定区域相关的phase_domain_index 。详情参考6.5.9部分。

6.5.4 Phase Thread Pointer Array Using Mixture-Level Thread ( THREAD_SUB_THREADS)

6.5.4通过混合物等值线使用相线指针数组

THREAD_SUB_THREADS宏可以用以恢复指针数组, pt, 它的元素包含相等值线(子线)的指针。 THREADS_SUB_THREADS 有一个变量 mixture_thread。

Thread *mixture_thread;

Thread **pt; /* initialize pt */

pt = THREAD_SUB_THREADS(mixture_thread);

mixture_thread 是mixture-level thread代表网格线或面线的指针。当你用包含线变量(e.g., DEFINE_PROFILE)的DEFINE宏时,通过FLUENT的求解器自动传递给你的UDF,这个函数就和混合物有关了。否则,如果混合物线的指针没有显式地传递给你的UDF,然后你需要用令一个方法来恢复。例如:你可以用 Lookup_Thread 宏。 (参考 6.5.7部分)。

pt[i] 数组的元素是与第I相的相等值线有关的值,这里i是phase_domain_index。当你想恢复网格具体相的信息时,你可以用 pt[i] 做为一些网格变量宏的自变量。例如:C_R(c,pt[i])可以用来返回网格点c第I相的密度。指针 pt[i] 可以用THREAD_SUB_THREAD 来恢复,在 6.5.3部分讨论,用I做为自变量。phase_domain_index 可以用宏PHASE_DOMAIN_INDEX 来恢复,参见 6.5.9 部分。

6.5.5 Mixture Domain Pointer Using a Phase Domain Pointer ( DOMAIN_SUPER_DOMAIN)

6.5.5通过相控制区指针调用混合物控制区指针

当你的UDF有权访问特殊的相等值线(子区)指针,你可以用宏

DOMAIN_SUPER_DOMAIN,恢复混合物等值线控制区指针。 DOMAIN_SUPER_DOMAIN 含有一个变量subdomain。注意: DOMAIN_SUPER_DOMAIN 在执行上和THREAD_SUPER_THREAD宏是非常相似的。参考 6.5.6.部分。

Domain *subdomain;

Domain *mixture_domain = DOMAIN_SUPER_DOMAIN(subdomain);

Subdomain是多相流混合物控制区相等值线的指针。当你用包含控制区变量(e.g., DEFINE_ADJUST)的DEFINE宏时,通过FLUENT的求解器,它可以自动传递给你的UDF文件,这个函数就会和混合物中的第一相和第二相相关了。注意:在当前的FLUENT版本中,DOMAIN_SUPER_DOMAIN 将返回与Get_Domain(1)相同的指针。这样,如果你的UDF可以使用子区的指针,建议使用宏DOMAIN_SUPER_DOMAIN 来代替 Get_Domain宏以避免将来的FLUENT 版本造成的不兼容问题。

6.5.6 Mixture Thread Pointer Using a Phase Thread Pointer ( THREAD_SUPER_THREAD)

6.5.6通过相线指针使用混合物线指针

当你的UDF有权访问某一条相线()子线指针你想恢复混合物的等值线指针时,你可以使用宏THREAD_SUPER_THREAD 。THREAD_SUPER_有一个自变量 subthread。

Thread *subthread;

Thread *mixture_thread = THREAD_SUPER_THREAD(subthread);

subthread 在多相流混合物中是一个特殊的相等值线指针。当你使用包含线变量(e.g., DEFINE_PROFILE)的DEFINE宏时,通过FLUENT的求解器它自动传递给你的UDF文件,这个函数就和混合物中的两相相互关联了。注意:在执行上和THREAD_SUPER_THREAD宏是非常相似的。参考6.5.5.部分。

6.5.7 Thread Pointer Using a Zone ID ( Lookup_Thread) 6.5.7通过区的ID使用线指针

当你想要在FLUENT的边界条件面板中恢复与给定区域ID的线指针时,你可以使用宏

Lookup_Thread 。例如,假设你的UDF需要对该区域的特殊线操作(并非查找所有的线),你可以用DEFINE宏定义你的UDF文件,而不用将线指针(e.g., DEFINE_ADJUST)从FLUENT的

求解器传递到你的UDF文件。你的UDF还可以使用 Lookup_Thread 来获得你想要的指针。这一过程分两步:首先,你应该从FLUENT的边界条件面板中区域的ID;然后,你需要使用硬代码做为自变量调用宏 Lookup_Thread。 Lookup_Thread 返回与给定区域ID相关的线的指针。你可以将线指针赋给thread_name,在你的UDF中使用。

int zone_ID;

Thread *thread_name = Lookup_Thread(domain,zone_ID);

在多相流的上下文中,通过宏Lookup_Thread返回的线是与控制区自变量相关的相的等值线。例子

下面是一个使用宏Lookup_Thread的UDF文件,在这个例子中,通过宏Lookup_Thread返回给定区域ID的线指针,将它赋给线。在begin_f_loop 和 F_CENTROID中使用这个线指针查找与这个线相关的所有的面,获得面的质心输出到文件。

/*******************************************************************/

/* Example of UDF that uses Lookup_Thread macro */

/* Note If UDF is applied to a multiphase flow problem, the domain*/

/* passed will be the mixture domain so that the thread that is */

/* returned is the mixture-level thread */

/*******************************************************************/

#include "udf.h"

/* domain passed to Adjust function is mixture domain for multiphase*/

DEFINE_ADJUST(print_f_centroids, domain)

{

real FC[2];

face_t f;

int ID = 1;

/* Zone ID for wall-1 zone from Boundary Conditions panel */

Thread *thread = Lookup_Thread(domain, ID);

begin_f_loop(f, thread)

{

F_CENTROID(FC, f, thread);

printf("x-coord = %f y-coord = %f", FC[0], FC[1]);

}

end_f_loop(f, thread)

}

6.5.8 domain_id Using a Phase Domain Pointer ( DOMAIN_ID) 6.5.8使用相的控制区指针

当你有权访问与给定相等值线控制区指针的domain_id时,你可以使用DOMAIN_ID。DOMAIN_ID 有一个自变量subdomain,它是相等值线控制区的指针。控制区(混合物)的最大的等值线的domain_id 的默认值是1。即:如过被传递给DOMAIN_ID的控制区指针是混合物控制区的等值线指针,那么,函数的返回值为1。注意:当你在FLUENT的相面板中选择需要的相时,宏所返回的domain_id 是和显示在图形用户界面中的整数值ID相同的。

Domain *subdomain;

int domain_id = DOMAIN_ID(subdomain);

6.5.9 Phase Domain Index Using a Phase Domain Pointer ( PHASE_DOMAIN_INDEX)

6.5.9 通过相控制区使用相控制区索引号

宏PHASE_DOMAIN_INDEX返回给定相等值线控制区(子区)指针的 phase_domain_index。PHASE_DOMAIN_INDEX 有一个自变量, subdomain,它是 phase-level domain的指针。phase_domain_index 是子区指针的索引号。初始相的值为整数0,以后每相依次加1。

Domain *subdomain;

int phase_domain_index = PHASE_DOMAIN_INDEX(subdomain);

6.6 Accessing Neighboring Cell and Thread Variables 6.6访问邻近网格和线的变量

你可以用F luent Inc. 提供的宏来确定邻近网格面。在复杂的UDF文件中,当你查询特定网格或线的面时,可能会用到这个信息。对给定的面f和它的线tf,两个相邻的网格点为c0和c1。若是控制区附面层上的面则只有c0,c1的值为NULL。一般的,然而当把网格导入到FLUENT中时,按照右手定则定义面上节点的顺序,面f上的网格点c0、c1都存在。下面的宏返回网格点c0和c1的ID和所在的线。

cell_t c0 = F_C0(f,tf); /* returns ID for c0*/

tc0 = THREAD_T0(tf); /* returns the cell thread for c0 */

cell_t c1 = F_C1(f,tf); /*returns ID for c1 */

tc1 = THREAD_T1(tf); /* returns the cell thread for c1 */

回忆由F_AREA 和 F_FLUX返回的信息是直接相关的,这些值从网格c0到c1返回正值。6.7 User-Defined Memory for Cells ( C_UDMI)

6.7 用户为网格定义内存

为了存储、恢复由UDF网格区域变量的值,你可以用C_UDMI函数分配500个单元。这些值可以用做后处理,例如,通过其它的UDFs。这个在用户定义内存中存储变量的方法是比用户定义标量( C_UDSI)更有效。

宏:C_UDMI( c, thread, index)

自变量类型: cell_t c

Thread *thread

int index

函数返回值: void

C_UDMI有三个自变量:c, thread, 和 index。 c 是网格标志符号, thread 是网格线指针,index 是识别数据内存分配的。与索引号0相关的用户定义的内存区域为0, (或 udm-0)。

在你用来在内存中存放变量之前,首先你需要在FLUENT的User-Defined Memory面板中分配内存。参考8.1.5部分

Define User-Defined Memory...

!!当在分配内存之前,如果你想用C_UDMI,就会出现错误。

你在图形用户窗口分配的每一个用户定义的内存,都会创建一个新的变量。例如:你要指定两个内存分配区,那么两个变量udm-0和and udm-1就会在数据储存器中产生。这些名字将会在后台处理面板中显示出来。下面是计算网格点的温度的例子,然后存放到用户定义的内存中。

例子:

/* Computes cell temperature and then stores the value in */

/* user-defined memory location 0 (corresponding to udm-0) */

begin_c_loop(c, thread)

{

temp = C_T(c, thread);

C_UDMI(c, thread, 0) = (temp - tmin) / (tmax-tmin);

}

end_c_loop(c, thread)

6.8 矢量工具

Fluent提供了一些工具,你可以用来在UDF中计算有关矢量的量。这些工具在源程序中以宏的形式运行。例如你可以用实函数 NV_MAG(V)计算矢量V的大小(模)。另外你可以用函数NV_MAG2(V)获得矢量V模的平方。下面是在UDF中可以利用的矢量工具列表。在矢量工具宏中有个约定俗成的惯例,V代表矢量,S代表标量,D代表一系列三维的矢量,最后一项在二维计算中被忽略。

在矢量函数中约定的计算顺序括号、指数、乘除、加减(PEMDAS)不再适用。相反下划线符号( _) 用来表示一组操作数,因此对元素的操作先于形成一个矢量。

!!注意:这部分所有的矢量工具都用在D 和3D中。因此,你没有必要在你的UDF中做任何的测试。

? 6.8.1 NV_MAG

? 6.8.2 NV_MAG2

? 6.8.3 ND_ND

? 6.8.4 ND_SUM

? 6.8.5 ND_SET

? 6.8.6 NV_V

? 6.8.7 NV_VV

? 6.8.8 NV_V_VS

? 6.8.9 NV_VS_VS

? 6.8.10 ND_DOT

6.8.1 NV_MAG

NV_MAG计算矢量的大小,即矢量平方和的平方根。

NV_MAG(x)

2D: sqrt(x[0]*x[0] + x[1]*x[1]);

3D: sqrt(x[0]*x[0] + x[1]*x[1] + x[2]*x[2]);

6.8.2 NV_MAG2

NV_MAG2计算矢量的平方和。

NV_MAG2(x)

2D: (x[0]*x[0] + x[1]*x[1]);

3D: (x[0]*x[0] + x[1]*x[1] + x[2]*x[2]);

6.8.3 ND_ND

在 RP_2D ( FLUENT 2D) 和RP_3D ( FLUENT 3D)中,常数 ND_ND 定义为2 。如果你想在2D

中建立一个矩阵,或在3D中建立一个矩阵,可以用到它。当你用 ND_ND时,你的 UDF 可以在2D 和3D cases中使用, 不用做任何改动。

real A[ND_ND][ND_ND]

for (i=0; i

for (j=0; J

A[i][j] = f(i, j);

6.8.4 ND_SUM

ND_SUM 计算ND_ND 的和。

ND_SUM(x, y, z)

2D: x + y;

3D: x + y + z;

6.8.5 ND_SET

ND_SET 产生 ND_ND 任务说明。

ND_SET(u, v, w, C_U(c, t), C_V(c, t), C_W(c, t))

u = C_U(c, t);

v = C_V(c, t);

if 3D:

w = C_W(c, t);

6.8.6 NV_V

NV_V 完成对两个矢量的操作。

NV_V(a, =, x);

a[0] = x[0]; a[1] = x[1]; etc.

注意:如果你在上面的方程中用 + = 代替=, 将得到

武大版分析化学(上册)答案_第6章_络合滴定法2

第6章 络合滴定法 2. 在PH=9.26的氨性缓冲溶液中,除氨络合物外的缓冲剂总浓度为0.20 mol ·L -1,游离C 2O 42-浓度为0.10 mol ·L -1。计算Cu 2+的αCu 。已知Cu(Ⅱ)- C 2O 42-络合物的lg β1=4.5,lg β2=8.9; Cu(Ⅱ)-OH - 络合物的lg β1=6.0。 解: 22433222 124224() 4.58.92 6.96.09.2614 1.26 1()1 4333() 1 3 2 1[][] 100.1010(0.10)101[]1101010[][]112[]0.10[][]1[][Cu C O Cu OH NH Cu NH C O C O OH C NH H NH mol L NH NH Ka NH N αββαβαββ------+ +-=++=?+?==+=+?==+=+=?=??=++又2259.35 3 5 3 9.36 ][]1010H NH βαααα- - ++=≈++=K

3.铬黑T(EBT)是一种有机弱酸,它的lgK 1H =11.6,lgK 2H =6.3,Mg-EBT 的lgK MgIn =7.0,计算在PH=10.0时的lgK ’MgIn 值。 4. 已知M(NH 3)42+的lg β1~ lg β4为2.0, 5.0,7.0,10.0,M(OH)42-的lg β1~ lg β4为4.0,8.0,14.0,15.0。在浓度为0.10 mol ·L -1的M 2+溶液中,滴加氨水至溶液中的游离NH 3浓度为0.010 mol ·L -1,PH=9.0试问溶液中的主要存在形式是那一种?浓度为多大?若将M 2+离子溶液用NaOH 和氨水调节至PH ≈13.0且游离氨浓度为0.010 mol ·L -1,则上述溶液中的主要存在形式是什麽?浓度又为多少? 解:用氨水调解时: 32()121(0.010)(0.010)122 M NH αββ=+++=K 3 2.0 2.0 131()[]10100.0083 122 M NH NH βδα-?=== 32 5.0 4.0 232()[]10100.083 122 M NH NH βδα-?=== 7.0 6.0310100.083122δ-?== 10.08.0 410100.83 122δ-?== 故主要存在形式是M(NH 3)42+,其浓度为0.10×0.83=0.083 mol ·L -1 用氨水和NaOH 调节时: 34811 ()()11100.1100.01120210M M NH M OH ααα-=+-=+?+?++=?K 49 111100.1510210δ-?==?? 86 211 100.01510210δ-?==?? 14311100.0010.5210δ?==? 15411 100.00010.5210δ?==? 故主要存在形式是M(OH)3-和M(OH)42-,其浓度均为0.050 mol ·L -1

分析化学第六版络合滴定法及答案

第六章络合滴定法 一、判断题(对的打√, 错的打×) 1、EDTA 与金属离子形成的配合物都是1:1 型的 ( ) 2、络合滴定中酸度越小,对滴定越有利,因此滴定时,pH 值越大越好( ) 3、络合滴定法可以测定许多金属离子,对于SO 4 2-等阴离子则不能测定( ) 4、EDTA 能与多数金属离子络合, 所以选择性较差。( ) 5、EDTA 滴定法测定自来水中Ca2+、Mg2+时, 用EBT 为指示剂, 若不加pH=10 的缓冲溶液, 终点时不会变色。 ( ) 6、络合滴定要求金属指示剂与金属离子形成的配合物MIn 的稳定常数越大越好( ) 7、若控制酸度使lg C M K′MY≥6,lg C N K′NY≤1, 就可准确滴定M 而N不干扰( ) 二、选择题 1.EDTA与金属离子形成螯合物时,其螯合比一般为() A.1:1 B.1:2 C.1:4 D.1:6 2.EDTA与金属离子络合时,一分子的EDTA可提供的络合原子个数为()A.2 B.4 C.6 D.8 3.在非缓冲溶液中用EDTA滴定金属离子时,溶液的pH值将() A.升高 B.降低 C.不变 D.与金属离子价态有关 4.下列叙述α Y(H) 正确的是() A.α Y(H)随酸度减小而增大 B.α Y(H) 随pH值增大而减小 C.α Y(H)随酸度增大而减小 D.α Y(H) 与pH变化无关 5.以铬黑T为指示剂,用EDTA溶液滴定Mg2+,可选择的缓冲溶液为()

A .KHC 8H 4O 4~HCl B .KH 2PO 4~K 2HPO 4 C .NH 4Cl ~NH 3·H 2O D .NaAc ~HAc 6.用EDTA 直接滴定有色金属离子,终点时所呈现的颜色是( ) A .游离指示剂In 的颜色 B .MY 的颜色 C .MIn 的颜色 D .a 与b 的混合颜色 7.Fe 3+、Al 3+对铬黑T 有( ) A .僵化作用 B .氧化作用 C .沉淀作用 D .封闭作用 8.在络合滴定中,用返滴定法测Al 3+时,以某金属离子标准溶液滴定过量的EDTA ,最适合的金属离子标准溶液是( ) A .Mg 2+ B .Zn 2+ C .Ag + D .Bi 3+ 9.以EDTA 滴定同浓度的金属离子M ,已知检测点时,△pM=, K’MY =,若要求TE=%,则被测离子M 的最低浓度应大于 ( ) A .·L -1 B .·L -1 C .·L -1 D .·L -1 10.在Fe 3+、Al 3+、Ca 2+、Mg 2+混合液中,EDTA 测定Fe 3+、Al 3+含量时,为了消除Ca 2+、Mg 2+的干扰,最简便的方法是( ) A .沉淀分离法 B .控制酸度法 C .络合掩蔽法 D .溶剂萃取法 11.用EDTA 滴定Bi 3+时,消除Fe 3+干扰宜采用( ) A .加入NaOH B .加抗坏血酸 C .加三乙醇胺 D .加氰化钾 12.今有A ,B 相同浓度的Zn 2+ - EDTA 溶液两份:A 为pH=10的NaOH 溶液;B 为 pH=10的氨性缓冲溶液。对叙述两溶液KˊZnY 的大小,哪一种是正确的 ( ) A .A 溶液的KˊZnY 和 B 溶液相等 B .A 溶液的KˊZnY 小于B 溶液的KˊZnY

第6章-络合滴定法

第6章 络合滴定法 2. 在PH=9.26的氨性缓冲溶液中,除氨络合物外的缓冲剂总浓度为0.20 mol·L -1 ,游离C 2O 42-浓度为0.10 mol·L -1 。计算Cu 2+ 的αCu 。已知Cu(Ⅱ)- C 2O 4 2- 络合物的lgβ1=4.5,lgβ2=8.9; Cu(Ⅱ)-OH -络合物的lgβ1=6.0。 解: 224 33222 124224() 4.58.92 6.96.09.2614 1.261()14333()1321[][] 100.1010(0.10)101[]1101010[][]112[]0.10[][]1[][Cu C O Cu OH NH Cu NH C O C O OH C NH H NH mol L NH NH Ka NH N αββαβαββ------+ +-=++=?+?==+=+?==+=+=?=??=++又23 24 259.35 3539.36 ()()()][]1010Cu Cu NH Cu C O Cu OH H NH βαααα- - ++=≈++=K

3.铬黑T(EBT)是一种有机弱酸,它的lgK 1H =11.6,lgK 2H =6.3,Mg-EBT 的lgK MgIn =7.0,计算在PH=10.0时的lgK ’MgIn 值。 4. 已知M(NH 3)42+ 的lgβ1~ lgβ4为 2.0,5.0,7.0,10.0,M(OH)42-的lgβ1~ lgβ4为4.0,8.0,14.0,15.0。在浓度为0.10 mol·L -1 的M 2+ 溶液中,滴加氨水至溶液中的游离NH 3浓度为0.010 mol·L -1 ,PH=9.0试问溶液中的主要存在形式是那一种?浓度为多大?若将M 2+ 离子溶液用NaOH 和氨水调节至PH≈13.0且游离氨浓度为0.010 mol·L -1,则上述溶液中的主要存在形式是什麽?浓度又为多少? 解:用氨水调解时: 3 2()121(0.010)(0.010)122 M NH αββ=+++=K 3 2.0 2.0 131()[] 10100.0083 122 M NH NH βδα-?=== 3 2 5.0 4.0 232()[]10100.083 122 M NH NH βδα-?=== 7.0 6.0310100.083122δ-?== 10.08.0 410100.83 122δ-?== 故主要存在形式是M(NH 3)42+ ,其浓度为0.10×0.83=0.083 mol·L -1 用氨水和NaOH 调节时: 3 4811 ()()11100.1100.01120210M M NH M OH ααα- =+-=+?+?++=?K 49 111100.1510210δ-?= =?? 8 6211 100.01510210δ-?==??

第6章 配位滴定法(课后习题及答案)

第六章 配位滴定法 思考题与习题 1.简答题: (1)何谓配位滴定法?配位滴定法对滴定反应有何要求? 答:以配位反应为基础的地点分析方法称为配位滴定法。配位滴定法要求配位反应按一定的反应式定量进行,且能进行完全;反应必须迅速;可以用适当的方法确定终点。 (2)EDTA 与其金属离子配合物的特点是什么? 答:EDTA 具有广泛的配位性能;EDTA 与金属离子配位时可生成的螯合物稳定性高,配位反应的完全程度高;EDTA 与金属离子形成配位化合物的配位比几乎均为1:1;EDTA 与金属离子形成的配合物大多能溶于水;配位反应迅速;EDTA 与无色离子形成的配合物也无色,便于用指示剂确定终点。 (3)配位滴定可行性的判断条件是什么? 答:MY M K c lg ≥6 (4)配位滴定中可能发生的副反应有哪些?从理论上看,哪些对滴定分析有利? 答:配位滴定副反应包括:EDTA 的酸效应,金属离子的水解效应,金属离子与其他配位剂的配位反应,干扰离子效应,配合物与氢离子、氢氧根离子的副反应等。配合物与氢离子、氢氧根离子的副反应对滴定分析有利。 (5)何谓指示剂的封闭现象?怎样消除封闭? 答:如果指示剂与某些金属离子形成的配位化合物极其稳定,以至于加入过量的滴定剂也不能将金属离子从金属-指示剂配合物中夺取出来,溶液在化学计量点附近就没有颜色变化,这种现象称为指示剂受到了封闭。可加掩蔽剂消除指示剂的封闭现象。 (6)提高配位滴定选择性的条件与措施有哪些? 答:1)控制酸度;2)分别采用配位掩蔽法、沉淀掩蔽法、氧化还原掩蔽法掩蔽干扰离子;3)分离干扰离子。 2.名词解释 (1)酸效应

答:由于H+的存在使配位剂参加主反应能力降低的现象。 (2)酸效应系数 答:定量表示酸效应进行的程度的系数称为酸效应系数。 (3) 配位效应 答:由于存在其他配位剂L 与金属离子M 配位使金属离子参加主反应能力降低的现象。 (4)配位效应系数 答:定量表示配位效应进行的程度的系数称为配位效应系数。 (5)金属指示剂的变色点 答:]n I []MIn ['=当点。变,此即指示剂的变色时,指示剂发生颜色突 3.计算题: (1)用EDTA 滴定法检验血清中的钙。取血清100μl ,加KOH 溶液2滴和钙红指示剂1~2滴,用0.001042mol/LEDTA 滴定至终点,用去0.2502ml 。计算此检品中Ca 2+含量(Ca 2+mg/100ml )。若健康成人血清中Ca 2+含量指标为 9~11mg/100ml ,此检品中Ca 2+含量是否正常?(尿中钙的测定与此相似,只是要用柠檬酸掩蔽Mg 2+) 解: E D T A C a S Ca ()100Ca%(0.0010420.2502)40.0810010.45(mg /100ml)(40.08g/mol)0.1 cV M V M ??=???=== (2)精密称取葡萄糖酸钙(C 12H 22O 14Ca·H 2O )0.5403g ,溶于水中,加入适量钙指示剂,用0.05000mol/LEDTA 滴定至终点,用去23.92ml 。计算此样品中葡萄糖酸钙含量。(1222142C H O Ca H O M =448.7) 解:

分析化学第六版第6章络合滴定法及答案

第六章络合滴定法 一、判断题(对的打V,错的打X) 1、E DTA与金属离子形成的配合物都是1:1型的() 2、络合滴定中酸度越小,对滴定越有利,因此滴定时,pH值越大越好() 3、络合滴定法可以测定许多金属离子,对于SO42-等阴离子则不能测定() 4、EDTA能与多数金属离子络合,所以选择性较差。() 5、E DTA滴定法测定自来水中Ca2+、Mg2+时,用EBT为指示剂,若不加pH=10的缓冲溶液,终点时不会变色。() 6、络合滴定要求金属指示剂与金属离子形成的配合物Mln的稳定常数越大越好() 7、若控制酸度使?C M K M Y >6 IgCNK N Y< 1,就可准确滴定M而N不干扰() 二、选择题 1. EDTA与金属离子形成螯合物时,其螯合比一般为() A. 1: 1 B. 1: 2 C. 1: 4 D. 1: 6 2. EDTA与金属离子络合时,一分子的EDTA可提供的络合原子个数为() A. 2 B . 4 C. 6 D . 8 3?在非缓冲溶液中用EDTA滴定金属离子时,溶液的pH值将() A.升高 B .降低C.不变 D .与金属离子价态有关 4. 下列叙述a(H)正确的是() A. a(H)随酸度减小而增大 B. a(H)随pH值增大而减小 C . a(H)随酸度增大而减小 D . a(H)与pH变化无关 5 .以铬黑T为指示剂,用EDTA溶液滴定Mg2+,可选择的缓冲溶液为() A . KHC8H4O4?HCI B . KH 2PO4?K2HPO4 6 .用EDTA直接滴定有色金属离子,终点时所呈现的颜色是() C . NH4CI?NH3 H2O D . NaAc ?HAc A .游离指示剂In的颜色 C . MIn的颜色 7 .Fe3+、Al3+对铬黑T 有() A .僵化作用 B .氧化作用B . MY的颜色 D . a与b的混合颜色 C .沉淀作用 D .封闭作用

郑州大学结构力学第六章测试答案 《结构力学》第06章在线测试

恭喜,交卷操作成功完成!你本次进行的《结构力学》第06章在线测试的得分为 20(满分20分),本次成绩已入库。若对成绩不满意,可重新再测,取最高分。 测试结果如下: z 1.1 [单选] [对] 截断一根梁式杆,相当于去掉几个约束? z 1.2 [单选] [对] 去掉一个固定端支座,相当于去掉几个约束? z 1.3 [单选] [对] 去掉一个固定铰支座,相当于去掉几个约束? z 1.4 [单选] [对] 力法方程的实质是 z 1.5 [单选] [对] 单跨超静定梁一侧温度升高一侧温度减低,这将 z 2.1 [多选] [对] 用力法计算超静定结构时,下列结论正确的是 z 2.2 [多选] [对] 两跨对称结构在对称荷载作用下,中柱的 z 2.3 [多选] [对] 两跨对称结构在反对称荷载作用下,中柱的 z 2.4 [多选] [对] 在力法典型方程中付系数的特点是 z 2.5 [多选] [对] 求超静定结构的位移时,可将虚拟单位荷载加在 z 3.1 [判断] [对] 一个无铰封闭框内有三个多余约束。 z 3.2 [判断] [对] 打开一个单铰,相当于除去了两个约束。 z 3.3 [判断] [对] 力法的基本未知量是多余未知力。 z 3.4 [判断] [对] 在力法计算时,多余未知力由位移条件来求。 z 3.5 [判断] [对] 超静定结构的内力计算要同时考虑平衡条件和变形连续条件。 确认

《结构力学》第06章在线测试 《结构力学》第06章在线测试剩余时间:55:07 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、截断一根梁式杆,相当于去掉几个约束? A、2 B、3 C、4 D、5 2、去掉一个固定端支座,相当于去掉几个约束? A、2 B、3 C、4 D、5 3、去掉一个固定铰支座,相当于去掉几个约束? A、2 B、3 C、4 D、5 4、力法方程的实质是 A、平衡条件 B、物理条件 C、互等定理 D、位移条件 5、单跨超静定梁一侧温度升高一侧温度减低,这将 A、不引起的的弯矩 B、引起降温面受拉的弯矩 C、引起升温面受拉的弯矩 D、有可能引起降温面授拉的弯矩也有可能引起升面授拉的弯矩 第二题、多项选择题(每题2分,5道题共10分) 1、用力法计算超静定结构时,下列结论正确的是 A、多余未知力通过位移条件求解 B、所有未知力通过位移条件求解 C、所有未知力通过平衡条件求 D、多余未知力通过平衡条件求解 E、多余未知力以外的其他未知力通过平衡条件求解 2、两跨对称结构在对称荷载作用下,中柱的 A、弯矩为零 B、剪力为零 C、轴力为零 D、轴向变形为零 E、弯曲变形为零 3、两跨对称结构在反对称荷载作用下,中柱的 A、弯矩为零 B、剪力为零 C、轴力为零 D、轴向变形为零 E、弯曲变形为零 4、在力法典型方程中付系数的特点是 A、可能为正 B、可能为负 C、可能为零 D、存在互等关系 E、与外因有关

分析化学第六版第6章络合滴定法与答案

第六章络合滴定法 一、判断题(对的打√ , 错的打×) 1、EDTA与金属离子形成的配合物都是 1:1型的() 2、络合滴定中酸度越小 ,对滴定越有利,因此滴定时, pH 值越大越好() 3、络合滴定法可以测定许多金属离子,对于SO42-等阴离子则不能测定() 4、EDTA能与多数金属离子络合 , 所以选择性较差。 () 5、EDTA滴定法测定自来水中 Ca2+、Mg 2+时, 用EBT为指示剂 , 若不加 pH=10 的缓冲溶液 ,终点时不会变色。() 6、络合滴定要求金属指示剂与金属离子形成的配合物MIn 的稳定常数越大越好 ( ) ≥6,lgCNK′NY ≤1,就可准确滴定M而N不干扰() M MY 7、若控制酸度使 lgC K′ 二、选择题 1.EDTA 与金属离子形成螯合物时,其螯合比一般为() A.1:1B.1:2C.1:4D.1:6 2.EDTA 与金属离子络合时,一分子的EDTA 可提供的络合原子个数为()A. 2B.4C. 6D. 8 3.在非缓冲溶液中用 EDTA 滴定金属离子时,溶液的pH 值将() A.升高B.降低C.不变D.与金属离子价态有关 4.下列叙述αY(H)正确的是() A.α随酸度减小而增大B.α随 pH 值增大而减小Y (H)Y (H) C.αY(H)随酸度增大而减小D.αY(H)与 pH 变化无关 5.以铬黑 T 为指示剂,用 EDTA 溶液滴定 Mg 2+,可选择的缓冲溶液为() 8 4 4~HCl B.KH 24~K24 A.KHC H O PO HPO C. NH 4Cl~ NH3·H2O D. NaAc~HAc 6.用 EDTA 直接滴定有色金属离子,终点时所呈现的颜色是() A.游离指示剂 In 的颜色B.MY 的颜色 C. MIn 的颜色D.a 与 b 的混合颜色 7.Fe3+、Al 3+对铬黑 T 有() A.僵化作用B.氧化作用C.沉淀作用D.封闭作用 8.在络合滴定中,用返滴定法测Al 3+时,以某金属离子标准溶液滴定过量的EDTA,

第六章络合滴定法

第六章络合滴定法 1.填空 (1)EDTA是一种氨羧络合剂,名称,用符号表示,其结构式为。配制标准溶液时一般采用EDTA二钠盐,分子式为,其水溶液pH为,可通过公式进行计算,标准溶液常用浓度为。 (2)一般情况下水溶液中的EDTA总是以等型体存在,其中以与金属离子形成的络合物最稳定,但仅在时EDTA才主要以此种型体存在。除个别金属离子外。EDTA与金属离子形成络合物时,络合比都是。 (3)K/MY称,它表示络合反应进行的程度,其计算式为。 (4)络合滴定曲线滴定突跃的大小取决于。在金属离子浓度一定的条件下,越大,突跃;在条件常数K/MY一定时,越大,突跃 。 (5)K/MY值是判断络合滴定误差大小的重要依据。在pM/一定时,K/MY越大,络合滴定的准确度。影响K/MY的因素有,其中酸度愈高愈大,lg/MY ; 的络合作用常能增大,减小。在K/MY 一定时,终点误差的大小由决定,而误差的正负由决定。 (6)在[H+]一定时,EDTA酸效应系数的计算公式为。 解:(1)EDTA是一种氨羧络合剂,名称乙二胺四乙酸,用符号H4Y 表示,其结构式为。配制标准溶液时一般采用EDTA二钠盐,分子式为,其水溶液pH为,可通过公式进行计算,标准溶液常用浓度为。 (2)一般情况下水溶液中的EDTA总是以和型体存在,其中以与金属离子形成的络合物最稳定,但仅在时EDTA才主要以此种型体存在。除个别金属离子外。EDTA与金属离子形

成络合物时,络合比都是。 (3)K/MY称,它表示络合反应进行的程度,其计算式为。 (4)络合滴定曲线滴定突跃的大小取决。在金属离子浓度一定的条件下,越大,突跃;在条件常数K/MY 一定时,越大,突跃。 (5)K/MY值是判断络合滴定误差大小的重要依据。在△pM/一定时,K/MY 越大,络合滴定的准确度。影响K/MY的因素有,其中酸度愈高,H+浓度愈大,lg/MY ; 的络合作用常能增大,减小。在K/MY一定时,终点误差的大小由决定,而误差的正负由决定。 2.Cu2+、、Zn2+、、Cd2+、Ni2+等离子均能与NH3形成络合物,为什么不能以氨水为滴定剂用络合滴定法来测定这些离子? 3.不经具体计算,如何通过络合物ML N的各βi值和络合剂的浓度[L]来估计溶液中络合物的主要存在型体? 4.已知乙酰丙酮(L)与Al3+络合物的累积常数lgβ1~lgβ3分别为8.6,15.5和21.3,AlL3为主要型体时的pL范围是多少?[AlL]与[AlL2]相等时的pL为多少?pL 为10.0时铝的主要型体又是多少? 5.铬蓝黑R(EBR)指示剂的H2In2-是红色,HIn2-是蓝色,In3-是橙色。它的pK a2=7.3,pK a3=13.5。它与金属离子形成的络合物MIn是红色。试问指示剂在不同的pH的范围各呈什么颜色?变化点的pH是多少?它在什么pH范围内能用作金属离子指示剂? 6.Ca2+与PAN不显色,但在pH=10~12时,加入适量的CuY,却可以用PAN 作为滴定Ca2+的指示剂,为什么? 7.用NaOH 标准溶液滴定FeCl3溶液中游离的HCl时,Fe3+将如何干扰?加入下列哪一种化合物可以消除干扰?EDTA,Ca-EDTA,柠檬酸三钠,三乙醇胺。 8.用EDTA滴定Ca2+、Mg2+时,可以用三乙醇胺、KCN掩蔽Fe3+,但不使用盐酸羟胺和抗坏血酸;在pH=1滴定Bi3+,可采用盐酸羟胺或抗坏血酸掩蔽Fe3+,

分析化学第六版第6章络合滴定法及答案.doc

第六章络合滴定法 一、判断题(对的打√,错的打×) 1、EDTA 与金属离子形成的配合物都是1:1 型的( ) 2、络合滴定中酸度越小 , 对滴定越有利,因此滴定时,pH 值越大越好( ) 3、络合滴定法可以测定许多金属离子,对于SO42-等阴离子则不能测定( ) 4、EDTA 能与多数金属离子络合 ,所以选择性较差。() 2+2+ 5、EDTA 滴定法测定自来水中 Ca 、Mg 时 ,用EBT为指示剂,若不加pH=10的缓冲溶液,终点时不会变色。() 6、络合滴定要求金属指示剂与金属离子形成的配合物MIn 的稳定常数越大越好 ( ) 、若控制酸度使 lg C M K′MY≥, C K′NY≤ 1, 就可准确滴定 M 而不干扰 ( ) 7 6 lg N N 二、选择题 1.EDTA与金属离子形成螯合物时,其螯合比一般为() A.1:1B.1:2C.1:4D.1:6 2.EDTA与金属离子络合时,一分子的EDTA可提供的络合原子个数为() A.2 B .4 C .6 D.8 3.在非缓冲溶液中用 EDTA滴定金属离子时,溶液的pH值将() A.升高 B .降低 C .不变 D .与金属离子价态有关 4.下列叙述αY(H)正确的是() A.αY(H)随酸度减小而增大 B .α Y( H)随pH值增大而减小 C.αY(H)随酸度增大而减小 D .α Y( H)与pH变化无关 2+ ) 5.以铬黑 T 为指示剂,用 EDTA溶液滴定 Mg ,可选择的缓冲溶液为( A.KHC8H4O4~HCl B . KH2PO4~K2HPO4 C.NH4Cl ~ NH3·H2O D .NaAc~HAc 6.用 EDTA直接滴定有色金属离子,终点时所呈现的颜色是() A.游离指示剂 In 的颜色 B . MY的颜色 C.MIn 的颜色 D .a 与 b 的混合颜色 7.Fe3+、 Al 3+对铬黑 T 有() A.僵化作用 B .氧化作用 C .沉淀作用 D .封闭作用 8.在络合滴定中,用返滴定法测Al 3+时,以某金属离子标准溶液滴定过量的EDTA,最

武大版分析化学上册答案 第6章 络合滴定法2

第6章 络合滴定法 2。 在PH=9.26的氨性缓冲溶液中,除氨络合物外的缓冲剂总浓度为0.20 mol ·L —1 ,游离C 2O 42—浓度为0。10 mol ·L -1.计算Cu 2+的αCu 。已知Cu (Ⅱ)- C 2O 42-络合物 的lg β1=4.5,lg β2=8.9; Cu (Ⅱ)-OH -络合物的lg β1=6。0。 解: 22433222 124224() 4.58.92 6.96.09.2614 1.26 1()1 4333()1321[][] 100.1010(0.10)101[]1101010[][]112[]0.10[][]1[][Cu C O Cu OH NH Cu NH C O C O OH C NH H NH mol L NH NH Ka NH N αββαβαββ------+ +-=++=?+?==+=+?==+=+=?=??=++又2324 259.353539.36 ()()()][]1010Cu Cu NH Cu C O Cu OH H NH βαααα--++=≈++=

3。铬黑T(EBT )是一种有机弱酸,它的lgK 1H =11.6,lgK 2H =6。3,Mg-EBT 的lgK MgIn =7。0,计算在PH=10。0时的lgK 'MgIn 值。 4。 已知M(NH 3)42+的lg β1~ lg β4为2.0,5.0,7。0,10。0,M (OH)42-的lg β1~ lg β4为4。0,8。0,14。0,15.0。在浓度为0.10 mol ·L —1的M 2+溶液中,滴加氨水至溶液中的游离NH 3浓度为0.010 mol ·L -1 ,PH=9.0试问溶液中的主要存在形式是那一种?浓度为多大?若将M 2+离子溶液用NaOH 和氨水调节至PH ≈13。0且游离氨浓度为0.010 mol ·L —1,则上述溶液中的主要存在形式是什麽?浓度又为多少? 解:用氨水调解时: 32()121(0.010)(0.010)122 M NH αββ=+++= 3 2.0 2.0 131()[]10100.0083 122 M NH NH βδα-?=== 32 5.0 4.0 232()[]10100.083 122 M NH NH βδα-?=== 7.0 6.0310100.083122δ-?== 10.08.0 410100.83 122δ-?== 故主要存在形式是M(NH 3)42+,其浓度为0。10×0。83=0.083 mol ·L -1 用氨水和NaOH 调节时: 34811 ()()11100.1100.01120210M M NH M OH ααα-=+-=+?+?++=? 49 111100.1510210δ-?==?? 86 211 100.01510210δ-?==?? 14311100.0010.5210δ?==? 15411 100.00010.5210δ?==? 故主要存在形式是M(OH)3-和M(OH )42— ,其浓度均为0.050 mol ·L —1 5。 实验测得0.10 mol ·L —1Ag (H 2NCH 2CH 2NH 2)2+溶液中的乙二胺游离浓度为0.010mol ·L —1。计算溶液中C 乙二胺和δAg (H 2NCH 2CH 2NH 2)+ 。Ag +与乙二胺络合物的lg β1=4.7,lg β2=7。7。 解:

【免费下载】分析化学练习题第6章 络合滴定法

分析化学练习题 第6章络合滴定法 一. 选择题 1.下列有关条件稳定常数的正确叙述是() A. 条件稳定常数只与酸效应有关 B. 条件稳定常数表示的是溶液中络合物实际的稳定常数 C. 条件稳定常数与温度无关 D. 条件稳定常数与络合物的稳定性无关 2. 对配位反应中的条件稳定常数,正确的叙述是() A. 条件稳定常数是理想状态下的稳定常数 B. 酸效应系数总是小于配位效应系数 C. 所有的副反应均使条件稳定常数减小 D. 条件稳定常数能更准确地描述配位化合物的稳定性 3. 已知lgK ZnY=16.5,若用0.020mol·L-1EDTA滴定0.020mol·L-1Zn2+溶液,要求△ pM=±0.2,TE = 0.1%,已知pH = 4,5,6,7时,对应lgαY(H)分别为 8.44,6.45,4.65,3.32,滴定时的最高允许酸度为 () A. pH≈4 B. pH≈5 C. pH≈6 D. pH≈7 4. 现用Cmol·L-1EDTA滴定等浓度的Ca2+,Ca2+无副反应。已知此时滴定的突跃范围 ΔpM,若EDTA和Ca2+的浓度增加10倍,则此时滴定的突跃范围为ΔpM' () A.ΔpM'=ΔpM-2 B.ΔpM'=ΔpM+1 C. ΔpM'=ΔpM-1 D. ΔpM'=ΔpM+2 5. 以EDTA滴定Zn2+时,加入的氨性溶液无法起到的作用是() A. 控制溶液酸度 B. 防止Zn2+水解 C. 防止指示剂僵化 D. 保持Zn2+可滴定状态 6. 下列有关金属离子指示剂的不正确描述是() A.理论变色点与溶液的pH值有关 B.没有确定的变色范围 C.与金属离子形成的络合物稳定性要适当 D.能在任意pH值时使用 7. 在配位滴定中,当溶液中存在干扰测定的共存离子时,一般优先使用() A. 沉淀掩蔽法 B.氧化还原掩蔽法 C. 离子交换法分离 D. 配位掩蔽法 8. 用EDTA滴定Bi3+时,消除Fe3+干扰宜采用() A. 加NaOH B.加抗坏血酸 C.加三乙醇胺 D.加氰化钾 9. 某溶液中含有Ca2+、Mg2+及少量Al3+、Fe3+,欲以铬黑T为指示剂,用EDTA滴定 Ca2+、Mg2+的含量,正确的做法是() A.碱性条件下加入KCN和NaF,再测定 B.酸性条件下加入三乙醇胺,再调至碱性测定 C.酸性条件下加入KCN和NaF,再调至碱性测定 D.加入NH3沉淀掩蔽Al3+和Fe3+,再测定

第六章静定结构位移计算习题

静定结构位移计算试题 一、是非判断: 1.变形体虚功原理仅适用于线弹性体系,不适用于非线弹性体系。( ) 2.虚功中的力状态和位移状态是彼此独立无关的,这两个状态中的任何一个都可看作是虚设的。( ) 3.功的互等定理仅适用于线弹性体系,不适用于非线弹性体系。( ) 4.位移反力互等定理对线弹性的静定结构和超静定结构均适用。( ) 5.图1-5(a)、(b)各杆EA 相同,则两图中C 点的竖向位移相等。( ) 题1-5图 题1-6图 6.如图题1-6所示斜梁EI =常数,则截面A 的转角EI ql A 243 = ?(顺时针)。( ) 7.图题1-7(a)、(b) 各杆EA 相同,则两图中C 点的竖向位移相等。( ) 题1-7图 8.M P 图、M 图1-8(a)、(b)所示,EI=常数。下列图乘结果是正确的: )8 5 323221(1l al l al EI CH ?+?=?。 ( ) 题1-8图 9.图题1-9中,下列图乘结果是正确的: )3 1(1))(31(132221111y b l EI y b a l y b l EI ?+?-+?。 ( ) 10.图1-10中,下列图乘结果是正确的: )8 5 323221(1d bc d ac EI ?+?。 ( ) 11.对于静定结构,没有内力就没有变形。( ) 12.对于静定结构,没有变形就没有位移。( ) 13.用单位荷载法计算结构位移时,用于计算外力虚功的广义力是虚设的广义单位力,而相应的广义位移是拟求的实际位移。( ) q (a) (b) l a a q A B P (b)M 图

题1-9图 题1-10图 14.如果结构是由线弹性材料制成的,但在有温度变化的情况下,功的互等定理不成立。( ) 二、填空 1.虚功原理有两种不同的应用形式,即 原理和 原理。其中 原理等价于变形协调条件。 2.位移计算时,虚拟广义单位力的原则是使外力虚功的值恰好等于 值。 3.用图乘法计算梁和刚架位移的适用条件是 。 4.如图2-4所示结构支座A 下沉a ,支座B 向右移动b ,则结点C 、D 的相对转角为 。 题2-4图 题2-5图 题2-6图 5.如图2-5所示结构中的AB 杆比原设计长度做短了1.5cm ,由此引起C 点的竖向位移为 ;引起支座A 的水平反力为 。 6.如图2-6所示三铰刚架,EI=常数。铰C 的竖向位移为 。 7.如图2-7所示结构,EI=常数。铰C 两截面的相对转角为 。 8.已知图2-8所示连续梁支座B 的反力为)(16 11 ↑=P R B ,则该连续梁在支座B 下沉1=?BV 时,D 点的竖向位移DV ?为 。 题2-7图 题2-8图 9.已知图2-9(a)所示简支梁在C 点作用集中力P =1kN 时,截面B 的角位移为0.005弧度,则该梁在截面 a b 1ω 2ω 3ω EI 1 EI 2 (a)M P 图 y 2 (a)M P 图 (b)M 图 C C P D B DV ? 1 =BV (b)

第六章 络合滴定法 (2)

第六章络合滴定法 教学要求: 1、了解EDTA及其与金属离子络合的特点。 2、理解络合平衡体系中形成常数和解离常数,逐级形成常数和逐级解离常数,累积形成常数,总形成常数和总解离常数的意义 3、掌握络合平衡中有关各型体的浓度的计算方法 4、理解副反应对络合平衡的影响,掌握表观形成常数的有关计算。 5、理解EDTA滴定过程中金属离子浓度的变化规律及化学计量点的PM SP‘的计算,影响滴定突跃大小的因素 6、金属指示剂的作用原理及选择原则,熟悉常用金属指示剂 7、掌握准确滴定的条件和滴定结果的计算 8、络合滴定酸度的选择及最高酸度和最低酸度的计算 9、混合离子分步滴定的判据 重点、难点: 1、络合平衡中有关各型体的浓度的计算方法 2、副反应对络合平衡的影响,掌握表观形成常数的有关计算。 3、滴定过程中金属离子浓度的变化规律 4、准确滴定的条件和滴定结果的计算 5、络合滴定酸度的选择及最高酸度和最低酸度的计算 教学内容: 第一节概述 第一节第二节第三节第四节第五节第六节第七节第八节 一、络合滴定中的滴定剂: ㈠、络合滴定法:以络合反应为基础的滴定分析方法称为络合滴定法。 ㈡、络合剂:在络合反应中,提供配位原子的物质称为配位体,即络合剂。 1、无机络合剂: ⑴无机络合剂的分子或离子大都是只含有一个配位原子的单齿配位体,它们 与金属离子的络合反应是逐级进行的; ⑵络合物的稳定性多数不高,因而各级络合反应都进行得不够完全; ⑶由于各级形成常数彼此相差不大,容易得到络合比不同的一系列络合物, 产物没有固定的组成,从而难以确定反应的计量关系和滴定终点。 2、有机络合剂: ⑴有机络合剂分子中常含有两个或两个以上的配位原子,称之为多齿配位体。 ⑵与金属离子络合时可以形成具有环状结构的螯合物,在一定的条件下络合比是固定的。

第六章络合滴定法作业答案

第六章 络合滴定法作业答案 4. 已知乙酰丙酮(L )与Al 3+ 络合物的累积形成常数lgβ1~lgβ3分别为8.6,15.5和21.3,AlL 3为主 要型体时的pL 范围是多少?[AlL]与[AlL 2]相等时的pL 为多少?pL 为10.0时铝的主要型体又是什么? 解:因为 由相邻两级络合物分布曲线的交点处有 pL=lgKi Al 3+ === AlL === AlL 2 === AlL 3 pL 8.6 6.9 5.8 ① AlL 3为主要型体时,∴pL<5.8 ② ][][2AlL AlL = 时, 9.6lg 2===K pL ③ 6.80.10>=pL ∴ Al 3+为主要型体。 5. 铬蓝黑R(EBR)指示剂的H 2In 2-是红色,HIn 2-是蓝色,In 3-是橙色。它的pK a2=7.3,pK a3=13.5。它与金属离子形成的络合物MIn 是红色。试问指示剂在不同的pH 范围各呈什么颜色?变化点的pH 是多少?它在什么pH 范围内能用作金属离子指示剂? 解:由题-=- =35 .1324 .7232In HIn In H a a pK pK (红色) (蓝色) (橙色) 根据指示剂的变色范围:pH=pKa±1 (1) pH ≤pKa 2-1=7.4-1=6.4, 显H 2In -的颜色(红色) pH ≥pKa 2+1=7.4+1=8.4, 显HIn 2-的颜色(蓝色) pH ≤pKa 3-1=13.5-1=12.5, 显HIn 2-的颜色(蓝色) pH ≥pKa 3+1=13.5+1=14.5, 显In 3-的颜色(橙色) pH=6.4~8.4,显混合色(红色和蓝色) pH=12.5~14.5,显混合色(蓝色和橙色) (2) 变色点的pH pH=7.4 (红色→蓝色) pH=13.5 (蓝色→橙色) (3) pH=8.3~12.5指示剂显蓝色,而MIn 显红色,颜色变化明显,可用作金属离子指示剂。 8 .5lg 3 .21lg lg lg lg 9.6lg 5.15lg lg lg 6.8lg 6.8lg lg 332133 213221*********==++====+======K K K K K K K K K K K K K K K ββββββ

第六章 络合滴定法.

分析化学教案 第六章络合滴定法 要求:1. 理解络合物平衡体系中的形成常数和离解常数,逐级形成常数和逐级离解常数、积累形成常数和积累离解常数、总形成常数和总离解常数的意义。 2. 了解副反应对络合平衡的影响和络合物表观稳定常数的意义。 3. 了解乙二胺四乙酸(即EDTA)滴定过程中,金属离子浓度的变化规律,影响滴定突跃大小的因 素,掌握络合滴定条件。 4. 了解金属指示剂的作用原理。熟悉几种常用金属指示剂的性能和选用条件。 5. 掌握络合滴定的有关计算方法。 重点:副反应的影响;配位滴定条件;配位滴定的有关计算 进程: §6-1 络合滴定法概述 络合滴定法是以形成络合物的反应为基础的滴定分析方法。络合滴定的反应是金属离子和阴离子(或分子)以配位键结合生成络离子的反应。 能用于络合滴定的反应必须具备以下几个条件: ①形成的络合物(或络离子)要相当稳定; ②在一定的反应条件下,必须生成配位数一定的络合物; ③络合反应速度要快; ④要有适当的指示剂或其它方法,简便、正确地指出反应等量点的到达。 一、络合滴定中的滴定剂 无机配位反应中,除个别反应(如Ag+与CN -,Hg2+与Cl-等反应)外,大多数不能用于络合滴定。 有机配位剂分子中常含有两个以上的可键合的原子,与金属离子配位时形成低配位比的具有环状结构

的螯合物。有机配位反应广泛用于配位滴定分析中。 广泛用作配位滴定剂的有机物质,是含有“—N(CH 2COOH)2”集团的有机化合物,称为氨羧配位剂。其分子中含有氨氮(图1)和羧氧(图2)配位原子。 氨羧配位剂兼有氨氮与羧氧的配位能力,几乎能与所有金属离子配位。 目前研究过的氨羧配位剂有几十种,其中应用最广的就是乙二胺四乙酸,简称EDTA 。 用EDTA 作标准溶液进行滴定的方法,称为EDTA 滴定法。 二、EDTA 及其二钠盐的性质 在溶液中EDTA 为双偶极离子结构: EDTA 在水溶液中,分六级离解:(见课件) 根据第5章的分布分数的计算公式,可得各型体的分布分数。 如: 以δ为纵坐标,以pH 值为横坐标作图,可以绘出EDTA 溶液中各种存在形式的分布分数δ与pH 值的关系图(下图)。 在EDTA 与金属离子形成的配合物中,以Y 4-与金属离子形成的配合物最为稳定。 EDTA 在水中的溶解度很小,难溶于酸和有机溶剂,易溶于NaOH 或NH 3溶液形成相应的盐。所以在配位滴定中,通常使用的是乙二胺四乙酸的二钠盐,也简称为EDTA 或EDTA 的二钠盐,用Na 2H 2Y ·2H 2O 来表示。EDTA 二钠盐是一种白色结晶状粉末,无臭、无味、无毒、稳定,吸潮性小,易于精制,可直接配制成标准溶液,且易溶于H 2O 。 三、EDTA 与金属离子形成的配合物的特点 1. EDTA 具有广泛的配位性能, 几乎能与所有金属 6 54321211 6 3214a a a a a a a a 4 a 56 a a a a Y K K K K K K K K ][H K ][H ][H K K K K δ +++=+++ -

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