Moltemplate Manual-(1), November 3, 2017

Moltemplate Manual-(1)(Andrew Jewett, Jensen Lab (Caltech), Shea Lab (UCSB))

 

Warning: This manual does not explain how to run “active-matter" simulations or use all-atom force fields.
        However numerous examples and README files are available to demonstrate how to run these kinds of simulations. Downloading these examples is highly recommended. (See section 2.)

 

        A simple file format has been created to store molecule definitions and force-fields (the LAMMPS-template format, LT). LT files are templates containing all of the text relevant to a particular molecule (including coordinates, bond-topology, angles, force-field parameters, constraints, groups and fixes).Moltemplate can then duplicate the molecule, customize it, and use it as a building-block for constructing larger, more complex molecules. (These molecules can be used to build even larger molecules.) Once built, individual molecules and subunits can be customized (atoms and bonds, and subunits can be inserted, moved, deleted and/or replaced).

 

        Popular force-fields such as AMBER GAFF and OPLS-AA have been converted into LT format, allowing users to quickly create molecules using moltemplate. (With help, more popular force-fields can be converted.) This way moltemplate users can build a molecule by specifying only a list of atoms in the molecule and the bonds connecting them.However they still have the freedom to easily customize individual interactions when needed.

 

1.1  Converting LT files to LAMMPS input/data files

 

The moltemplate.sh program converts LT-files (which contain molecule definitions) into complete LAMMPS input-scripts and data-files:


moltemplate.sh -atomstyle "full" system.lt
or
moltemplate.sh -xyz coords.xyz -atomstyle "full" -vmd system.lt

 

        In the first example, the coordinates of the atoms in the system are built from commands inside the "system.lt" file.

        In the second example coordinates for the atoms are read from an XYZ-file, and then invokes VMD to visualizethe system just created. (PDB-files and other coordinate formats are also supported. Note: The "full" atom style was used in this example, but otherLAMMPS atom styles are supported, including hybrid styles.)
        Either of these commands will construct a LAMMPS data file and a LAMMPS input script (and possibly one or more auxiliary input files), which can be directly run in LAMMPS with minimal editing.

 

1.2  Converting LAMMPS input/data files to LT files

 Existing LAMMPS input/data files can be converted into \.LT" files using the \ltemplify.py" utility. (Some additional manual editing may be required. See appendix B.)

 

Additional tools
The VMD topotools plugin [1] is useful for converting PDB files into LAMMPS format. These files can then be converted to \LT" format using the \ltemplify.py" utility. VMD [2] and topotools are also useful for visualizing the data files created by moltemplate.sh (See section 4.3.)


The
PACKMOL [3] program is useful for generating coordinates of dense heterogeneous mixtures of molecules, which can be read by moltemplate.
(The VMD \solvate" plugin may also be helpful.)

 

Moltemplate files (LT files) share the same file format and syntax structure as LAMMPS DATA files and INPUT scripts.

 

4.1 Simulating a box of water using moltemplate and LAMMPS

 

clip_image001[4]

Figure 1: Coordinates of a single water molecule in our example. (Atomic radii not to scale.)


Here we show an example of a lammps-template file for water. (The settings shown here are borrowed from the simple-point-charge [4] SPC/E model.)

In addition to coordinates, topology and force-field settings, “LT" files can optionally include any other kind of LAMMPS settings including SHAKE constraints, k-space settings, and even group definitions.

 

# (NOTE: Text following ’#’ characters are comments)
#
# file "spce_simple.lt"
#
# H1    H2
#   \    /
#      O
#
SPCE {
## Atom properties and molecular topology go in the various "Data ..." sections
# We selected "
atom_style full
". That means we use this column format:

# atomID  molID  atomType  charge   coordX    coordY   coordZ
write("Data Atoms") {
$atom:o   $mol:.  @atom:O  -0.8476  0.0000000  0.000000  0.00000
$atom:h1  $mol:.  @atom:H  0.4238  0.8164904  0.5773590  0.00000
$atom:h2  $mol:.  @atom:H  0.4238  -0.8164904  0.5773590  0.00000
}

#
Variables beginning with $ or @ will be replaced by numbers(被数字替代)LAMMPS will
# eventually read. Each of the three atoms" will be assigned unique
# atomIDs (denoted here by "$atom:o", "$atom:h1", "$atom:h2"), even if
# they belong to different molecules. However, the atom types
# (denoted "@atom:O", "@atom:H") are shared for atoms in all molecules.
# All 3 atoms share same molID number (represeted here by "$mol:.")
# however that number is different for different water molecules.
write_once("Data Masses") {
# atomType mass
@atom:O 15.9994
@atom:H 1.008
}

write("Data Bonds") {
# bondID bondType atomID1 atomID2
$bond:oh1 @bond:OH $atom:o $atom:h1
$bond:oh2 @bond:OH $atom:o $atom:h2
}
write("Data Angles") {

# angleID angleType atomID1 atomID2 atomID3
$angle:hoh @angle:HOH $atom:h1 $atom:o $atom:h2
}

# --- Force-field parameters go in the
"In Settings" section: ---
write_once("In Settings") {
# --
Non-bonded (Pair) interactions --
# atomType1 atomType2 parameter-list (epsilon, sigma)
pair_coeff @atom:O @atom:O 0.1553 3.166
pair_coeff @atom:H @atom:H 0.0 2.058

# (
mixing rules determine interactions between types @atom:O and @atom:H
)
# --
Bonded interactions
--

# -- Bonded interactions --

#

bondType

parameter list (k_bond, r0)

bond_coeff

@bond:OH

1000.00 1.0

#

angleType

parameter-list (k_theta, theta0)

angle_coeff

@angle:HOH

1000.0  109.47

# Group definitions and constraints can also go in the "In Settings" section
group spce type @atom:O @atom:H
fix fSHAKE spce shake 0.0001 10 100 b @bond:OH a @angle:HOH

# (lammps quirk: Remember to "unfix fSHAKE" during minimization.)
}
# LAMMPS supports a large number of force-field styles. We must select
# which ones we need. This information belongs
in the "In Init" section.
write_once("In Init") {

units

real

# angstroms, kCal/mole, Daltons, Kelvin

atom_style

full

# select column format for Atoms section

pair_style

lj/charmm/coul/long 9.0 10.0 10

# params needed: epsilon sigma

bond_style

harmonic

# parameters needed: k_bond, r0

angle_style

harmonic

# parameters needed: k_theta, theta0

kspace_style

pppm 0.0001

# long-range electrostatics sum method

pair_modify

mix arithmetic

# using Lorenz-Berthelot mixing rules

}
} # SPCE

Words which are preceded by “$" or “@" characters are counter variables and will be replaced by integers. (See section 5.2 for details.) Users can include SPCE water in their simulations using commands like these:

# -- file "system.lt" --
import "spce_simple.lt"
wat = new SPCE [1000]
You can now use \moltemplate.sh" to create simulation input files for LAMMPS
moltemplate.sh -pdb coords.pdb -atomstyle "full" system.lt
This command will create lammps input files for the molecular system described in “system.lt", using the desired atom style (“full" by default). In this example, moltemplate is relying on an external file (“coords.pdb") to supply the atomic coordinates of the water molecules, as well as the
periodic boundary conditions. Coordinates in XYZ format are also supported using “-xyz coords.xyz".

 

Details
Note that since XYZ files lack boundary information, you must also include a “Boundary" section in your “.lt" file, as demonstrated in section 4.2. In both cases, the order of the atom types in a PDB or XYZ file (after sorting) should match the order they are created by moltemplate (which is determined by the order of the “new" commands in the LT file). Unfortunately this may require careful manual editing of the PDB or XYZ file.

 

4.2 Coordinate generation

It is not necessary to provide a separate file with atomic coordinates. It is more common to manually specify the location (and orientation) of the molecules in your system using the “.move()" and “.rot()" commands in the LT file itself (discussed in section 6). For example you can replace the line:

wat = new SPCE [1000]

from the example above with 1000 lines:

 

wat1 = new SPCE

wat2 = new SPCE.move(3.450, 0.0, 0.0)

wat3 = new SPCE.move(6.900, 0.0, 0.0)

wat4 = new SPCE.move(10.35, 0.0, 0.0)

: :

wat1000 = new SPCE.move(34.50, 34.50, 34.50)

 

Specifying geometry this way is tedious. Alternatively, moltemplate has simple commands for arranging multiple copies of a molecule in periodic, crystalline, toroidal, and helical 1-D, 2-D, and 3-D lattices. For example, you can generate a simple cubic lattice of 10×10×10 water molecules (with a 3.45 Angstrom spacing) using a single command (which in this example we split into multiple lines)


wat = new SPCE [10].move(0,0,3.45)
               [10].move(0,3.45,0)
               [10].move(3.45,0,0)

 

(See section 6 for more details and examples.) This will create 1000 molecules with names like “wat[0][0][0]", “wat[0][0][1]",: : :, “wat[9][9][9]". You can always access individual atomIDs, molIDs, bondIDs, angleIDs, and dihedralIDs (if present), for any molecule elsewhere in your LT files using this notation: \$atom:wat[2][3][4]/h1", \$bond:wat[0][5][1]/oh1", “$angle:wat[2][8][3]/hoh",“$mol:wat[0][1][2]". This allows you to define interactions which link different molecules together (see section 6).

Boundary Conditions:
LAMMPS simulations have finite volume and are usually periodic. We must specify the dimensions of the simulation boundary using the “write once(“Data Boundary")" command.
write_once("Data Boundary") {
0.0 34.5 xlo xhi
0.0 34.5 ylo yhi
0.0 34.5 zlo zhi
}


This is usually specified in the outermost LT file (“system.lt" in this example). (Note: Boundary conditions do not have to be rectangular or even periodicFor triclinic cells, additional “xy", “xz", and “yz" tilt parameters can be added. For details, lookup the “read data" and “boundary" commands in the official LAMMPS documentation.)

 

This system is shown in figure 2a). After you have specified the geometry, then you can run moltemplate.sh this way:


moltemplate.sh -atomstyle "full" system.lt (本人电脑需用sh moltemplate.sh -atomstyle "full" system.lt)

 

clip_image003[4]

 

Figure 2: A box of 1000 water molecules (before and after pressure equilibration), generated by moltemplate and visualized by VMD with the topotools plugin. (The VMD console commands used for visualization were: “topo readlammpsdata system.data full"system.data文件须在vmd安装目录下), “animate write psf system.psf", “pbc wrap -compound res -all", and “pbc box". See sections 4.3, and C for details.

 

To view a data file:
a) start VMD
b) from the menu, select
Extensions!
Tk Console

c) enter:
topo readlammpsdata system.data full
animate write psf system.psf

 

The first command will display all of the atoms and bonds in your system in VMD’s 3-D window. (We use \full" because we are using the \full" atom style in this particular example. If you are using a different atom style, then change the command above accordingly.)


The second command will create a PSF file (\system.psf") which will be useful later for viewing a trajectory file created during a LAMMPS simulation. (See section 4.5.)


Most likely, atoms and bonds will be represented by ugly dots and lines by default. To change the way molecules are displayed, control their color, display periodic boundaries, and wrap atomic coordinates, read the short VMD tutorial in appendix C

 

4.4 Running a LAMMPS simulation (after using moltemplate)
To run a simulation of one or more molecules, LAMMPS requires an input script and a data file. Input scripts typically contain force field styles, parameters and run settings. (They sometimes also contain atom coordinates.) Data files typically contain atom coordinates and bonded topology data. (They sometimes also contain force-field parameters.)


Moltemplate will create the following files: \system.data", \system.in", \system.in.init", \system.in.settings", (and possibly other files including \system.in.coords").

These are LAMMPS input/data files, and they can be run in LAMMPS with minimal modification (see below).

 

The main input script file is named \system.in", and it usually contains just three lines:


include "system.in.init"
read_data "system.data"
include "system.in.settings"

 

To run a simulation, you will have to edit this file in order to add a couple of run commands. These commands tell LAMMPS about the simulation conditions you want to use (temperature, pressure), how long to run the simulation, how to integrate the equations of motion, and how to write the results to a file (file format, frequency, etc). Moltemplate.sh can not do this for you. Some simple examples (which you can paste into your input script) are provided in the online examples which can be downloaded from http://moltemplate.org. (These example input scripts typically have names like \run.in.nvt" and \run.in.npt".)

 

5.1 Basics: The write() and write once() commands
Each LT file typically contains one or more \write" or \write once" commands. These commands have the following syntax


write_once(filename) {text_block}


This creates a new file with the desired file name and fills it with the text enclosed in curly brackets {}. Text blocks usually span multiple lines and contain counter variables (beginning with \@" or \$"). which are replaced with numbers. However the \write()" command will repeatedly append the same block of text to the file every time the molecule (in which the write command appears) is generated or copied (using the \new" command, after incrementing the appropriate counters, as explained in 5.2.2).

 

5.2 Basics: counter variables
Words following a \@" or a \$" character are counter variables. (These are not to be confused with LAMMPS variables http://lammps.sandia.gov/doc/variable.html). By default, all counter variables are substituted with a numeric counter before they are written to a file. These counters begin at 1 (by default), and are incremented as the system size and complexity grows (see below).


These words typically contain a colon (:) followed by more text. The text preceding this colon is the
category name. (For example: \$atom:", \$bond:", \$angle:", \@atom:", \@bond:", \@angle:") Variables belonging to different categories are counted independently.
Users can
override these assignment rules
and create custom categories. (See appendices D.1 and D.2 for details.)

 

5.2.1 Static counters begin with \@"
\@" variables generally correspond to types: such as atom types, bond types, angle types, dihedral types, improper types.  These are simple variables and they assigned to unique integers in the order they are read from your LT files.  Each uniquely named variable in each category is assigned to a different integer. For example, \@bond:" type variables are numbered from \1" to the number of bond types. (Pairs of bonded atoms are assigned a bond type. Later, LAMMPS will use this integer to lookup the bond-length and Hooke’s-law elastic constant describing the force between these two atoms.)

 

5.2.2 Instance counters begin with \$"
On the other hand, \$" variables correspond to unique ID numbers
: atomIDs, bond-IDs, angle-IDs, dihedral-IDs, improper-IDs, and molecule-IDs.
These variables are created whenever a copy of a molecule is created (using the \new" command). If you create 1000 copies of a water molecule using a command like


wat = new SPCE[10][10][10]


then moltemplate creates 3000 \$atom" variables with names like

 

$atom:wat[0][0][0]/o
$atom:wat[0][0][0]/h1
$atom:wat[0][0][0]/h2
$atom:wat[0][0][1]/o
$atom:wat[0][0][1]/h1
$atom:wat[0][0][1]/h2
...
$atom:wat[9][9][9]/o
$atom:wat[9][9][9]/h1
$atom:wat[9][9][9]/h2

 

5.2.3 Variable names: short-names vs. full-names
In the example above, the $ variables have full-names like \$atom:wat[8][3][7]/h1", not \$atom:h1".
However inside the definition of the water molecule, you don’t specify the full name. You can refer to this atom as \$atom:h1". Likewise, the full-name for the @atom variables is actually \@atom:SPCE/H", not \@atom:H".

However inside the definition of the water molecule, you typically use the shorthand notation \@atom:H".

 

5.2.4 Numeric substitution
Before being written to a file, every variable (either $ or @) with a unique full-name will be assigned to a unique integer, starting at 1 by default.
The various
$
atom variables in the water example will be substituted with integers from 1 to 3000 (assuming no other molecules are present).
But the “@atom:O" and “@atom:H" variables (which are shorthand for \@atom:SPCE/O" and \@atom:SPCE/H") will be assigned to \1" and \2" (again, assuming no other molecule types are present). So, in summary,
@ variables increase with the complexity
of your system  (IE the number of molecule types or force-field parameters), but $ variables increase with the size of your system.

 

5.2.5 Variable scope
This effectively means that all variables are specific to local molecules they were defined in. In other words, an atom type named \@atom:H" inside the \SPCE" molecule,  will be assigned to a different number than an atom named \@atom:H" in an \Arginine" molecule. This is because the two variables will have different full names (\@atom:SPCE/H", and \@atom:Arginine/H").


Sharing atom types or other variables between molecules
There are several ways to share atom types between two molecules. The recommended way is to define them in a separate file and refer to them when needed. This approach is demonstrated in section 6.1.
(Alternately, you can define them outside the current molecule definition, and use file-system-path-like syntax (\../", or \../../" or \/") to access atoms (or molecules) outside of the current molecule. For example, two different molecule types can share the same type of hydrogen atom by referring to it using this syntax: \@atom:../H". For details, see section 9.6. and appendix G.)

 

5.3 Troubleshooting using the output ttree directory
Users can see what numbers were assigned to each variable by inspecting the contents of the \output ttree" subdirectory created by moltemplate. Unfortunately, it not unusual for LAMMPS to crash the first time you attempt to run it on a DATA file created by moltemplate. This often occurs if you failed to spell atom types and other variables consistently. The LAMMPS error message (located at the end of the \log.lammps" file created by LAMMPS) will help you determine what type of mistake you made. (For example, what type of variable was misspelled or placed in the wrong place?) To help you, the \output ttree" directory contains a file named \ttree assignments.txt". This is a simple 2-column text file containing a list of all of the variables you have created in one column, and the numbers they were assigned to in the second column. (There is also a comment on each line beginning with a \#" character which indicates the file and line number where this variable is first used.)

 

The \output ttree" directory also contains all of the files that you created. The versions with a \.template" extension contain text interspersed with full variable names (before numeric substitution). (A spelling mistake, like using \$atom:h" when you meant to say \$atom:h1" or \@atom:H" will show up in these files if you inspect them carefully.) This can help you identify where the mistake occurred in your LT files. Once a molecular system is debugged and working, users can ignore or discard the contents of this directory.

 

5.4 \Data" and \In"
Again, LAMMPS requires an input script and a data file to run. Moltemplate’s job is to generate these files. Input scripts typically contain force-field styles,  parameters and run settings Data files typically contain atom coordinates and bonded topology data. If you are familiar with LAMMPS, you may have noticed the file names above (in the example from section 4.1) sound suspiciously like sections from LAMMPS data files or input scripts, such as \Data Boundary", \Data toms", \Data Bonds", \Data Masses", \Data Angles", \Data Dihedrals", \Data Impropers", \In Init", \In Settings"). All files whose names begin with \In " or \Data " are special. For the user’s convenience, the moltemplate.sh script copies the contents of these files into the corresponding section (\Atoms", \Bonds", \Angles", etc.) of the DATA file or INPUT scripts generated by moltemplate (\system.data", \system.in.settings", etc). (Then the original files are moved to the \output ttree/" directory, in an effort to clean things up and hide them from view.) Users can create their own custom sections to a LAMMPS data file. (See section 5.6. More generally, the \write()" and \write once()" commands can be used to create any other files you may need to run your simulations, which refer to the same @atom and @bond types. (See section 5.5 for an example.)

转载于:https://www.cnblogs.com/Simulation-Campus/p/8835048.html

计算机理论 第一章 信息技术 信息一般说法信息就是信息,它既不是物质也不是能量。 客观《信息》指事物运动的状态及状态变化的方式 信息的行为活动包括:信息的收集,加工,存储,传递,使用。 信息技术指的是用来扩展人们信息器官功能,协助人们更有效的进行信息处理的一类技术。 基本的信息技术包括: 扩展感觉器官功能的感测(获取)与识别技术 扩展神经系统功能的通信技术 扩展大脑功能的计算(处理)与存储技术 扩展效应器官功能的控制与显示技术 微电子技术与集成电路 微电子技术是信息技术中的关键技术 还是发展电子信息产业和各项高技术的基础。还是以集成电路为核心。 早期的电子技术以真空电子管为基础元件,这个阶段产生了广播,电视,无线电通信,电子表,自动控制和第一代电子计算机。1948年晶体管的发明,使电子电路在小型化方面前进了一大步。集成电力(IC)卡是20世纪50年代出现的,以半导体单晶片作为材料,将大量晶体管,电阻元件及互联线的电子线路集成在基片上,构成微型化的电路或系统。现代的集成电路使用半导体材料主要是硅,也可以使化合物半导体如砷化镓。 集成电路根据它包含的电子元件数目可以分为小规模,中规模,大规模,超大规模,极大规模集成电路。按照集成度(单个集成电路所含的电子元件数目) <100 小规模集成电路 SSI 100~3000中规模集成电路 MSI 3000~100000 大规模集成电路 LSI 100000~1000000 超大规模集成电路 VLSI >100万 极大规模集成电路 ULSI 通常不区分VLSI和ULSI,而统称为VLSI 现在是PC机,也就是个人计算机中使用的微处理器(CPU),芯片组,图形加速芯片就是超大规模或极大规模的集成电路。 集成电路按所用晶体管结构,电路和工艺的不同,主要分为双极性集成电路,金属氧化物半导体(MOS)集成电路,双极~金属氧化物半导体集成电路。 按功能,数字和模拟集成电路。 按用途,通用和专用集成电路,微处理器和存储器芯片属于通用集成电路,而专用集成电路应按照某种特定要求而专门设计,制定的集成电路。 集成电路芯片是微电子技术的结晶,它是计算机和通信设备的硬件核心,是现代信息产业的基础。 集成电路的特点是体积小,重量轻,可靠性高。工作速度取决于组成逻辑电路的晶体管的尺寸。晶体管尺寸越小,其极限工作频率越高,门电路的开关速度就越快,芯片上的电路元件的线条越细,相同面积的晶片可容纳的晶体管就越多,功能就越强,速度就越快。 Intel公司创始人之一摩尔在1965年的《电子学》上发表预测,单块集成电路的集成度平均18~24个月翻一番,这就是有名的Moore定律。 IC卡是(集成电路卡)外国叫做chip card或者smart cart。 IC卡按卡中集成电路芯片情况可分为!1,存储器卡,容量大约几到十几KB,信息长期保存,可通过读卡器改写。构造简单,方便使用,无需网络即可运用,主要用于安全性不高的场合。如,电话卡,公交卡,水电卡2,CPU卡,也叫智能卡,卡上集成了CPU,也就是中央助力器,还有程序存储器,数据存储器,以及操作系统。用于重要场合,比如信用卡。 另外SIM卡就是一种特殊的CPU卡,他存储了用户身份信息还有号码和短信等。 IC卡按使用方式分为1,接触式IC卡,其表面有方形镀金接口,共8或者6个镀金触点,使用必须插入读卡机卡口内,通过金属触点传输数据,这样的IC卡用于存取信息量大,读写操作比较复杂的场合。接触式IC卡,易磨损,怕油污,寿命短。2,非接触式IC卡,又叫做射频卡,感应卡,采用电磁感应方式无线传输数据,存储容量简单,读写数据不多,用于身份验证场合。使用寿命长。 通信技术入门 广义上讲,各种信息的专递均可称之为通信。 现代通信指的是电波或光波信息的技术,通常称之为电信。 通信的基本任务是传递信息,至少由三个要素组成,信息的发送者,信息的接收者,信息的传输通道(称为信道)。三要素又叫做 信源,信宿,信道。 通信系统中被传输的信息都必须是某种以电或者光信号的形式才能通过传输介质进行传输。光或者电信号强度的变化有两种形式:连续形式和离散形式。连续形式也叫做模拟信号,离散型式也叫做数字型号。 高频振荡的正弦波信号在长距离当中比其他信号传播的更远,把这样的波称之为 载波 。 利用信源信号去调整(改变)载波的某个参数(幅度,频率或相位)这个过程叫做调制。 接收方把载波所携带的信号检测出来恢复为原来信号的形式,这个过程称之为解调。 载波信号是频率比被传输信号(称为调制信号)高的多的正弦波。调制的方法主要有三个:幅度调制,频率调制,相位调制。 对载波进行调制的设备称为“调制器”,接收方解调使用的设备称为“解调器”。大多数情况下,通信总是双向进行,所以调制器与解调器往往在一起,这样的设备称为“调制解调器”。 为了提高传输线路的利用率,降低通信成本,一般是让多路信号同时共用一条传输线进行传输,这就是多路复用的技术。 多路复用技术有两种:时分多路复用(TDM),各个终端设备(计算机)以事先规定的顺序使用同一传输线路进行数据(或信号)传输。 频分多路复用(FDM),它将每个信源发送的信号(或经过时分多路复用后的复合信号)调制在不同频率的载波上,通过多路复用器将它们复合成为一个信号,然后在同一传输线路上进行传输。 直接传输信源产生的模拟信号或者通过用模拟信号对载波调制后进行传输的通信技术成为模拟通信技术,优点简单,成本低。缺点质量不稳定。 将信源产生的模拟信号转换成为数字信号(或者信源本身就是数字信号),然后直接传输数字信号或通过用数字信号对载波进行数字调制来传输信号的技术称为数字通信技术。与模拟信号相比,数字信号有多方面的优点;1抗干扰能力强,2灵活性好3因为书数字信号可以北欧计算机直接存储,管理,处理。4通信的安全性更高5数字通信中使用的大多数是数字电路,数字电路比模拟电路更容易用超大规模集成电路实现,有利于通信设备的小型化,微型化,也降低了功耗。 数字通信的应用(理解) 数字传输技术最早是被长途电话系统采用的。由于模拟信号在远距离传输时存在衰减,需要放大器来接力,而沿线每个放大器都会轻微扭曲信号。所以20世纪60年代,电话公司就使用数字技术来解决这个问题。模拟声音信号在需要通过中继线和长途线进行远距离传输之前,先变换为数字形式(此过程称为“数字化”或“PCM编码”)然后经过多路复用和数字调制(需要时)再在中继线和长途线路上进行传输。到达接收方所在的地区的交换局之后再使用分路器把不同的话路分开,经解码器还原成模拟声音信号后,由用户线 至接听方的电话机。没欠90%以上的中继线和长途线以经采用光纤。 近几年广播电视技术的发展趋势是“数字广播”和“数字电视”。 数字信号系统的性能指标(1)信道带宽。模拟带宽是信号的最高频率减去最低频率而得到,单位为赫兹(Hz)。数字带宽指一个信道允许的最大数据传输速率,也叫做信道容量。信道带宽与采用的传输介质,传输距离,多路复用方法,调制解调方法等密切相关。 2,数据传输速率,简称为数据速率,单位时间内传送二进位数目,千位/秒(kbps) 3,误码率,指数据传输中规定时间内出错数据占被传输数据总数的比例。 4,端—端延迟。指数据从信源传送到信宿所花的时间 除了以上四点之外,数字传输性能指标还与传输介质,传输技术,传输设备等密切相关。 传输介质 通信分为有线通信和无线通信2类,有线通信使用介质有金属导体和光导纤维。金属导体利用电流传输信息,光导纤维通过光波来传输信息;无线通信不需要物理连接,利用电磁波传输信息。 金属导体有双绞线和同轴电缆。 双绞线分为屏蔽双绞线(STP)无屏蔽双绞线(UTP),双绞线缺点;易受外界高频电磁波干扰,误码率较高,通常只在建筑物内部使用。 同轴电缆分为基带同轴电缆和宽带同轴电缆,前者在计算机局域网中200~500米,传输速度可达50Mb/s。后者主要用于传输电视信号,可达几公里甚至几十公里。 移动通信 所谓移动通信指的是处于移动状态的对象之间的通信,它包括蜂窝移动,集群调度,无线电话,寻呼系统,卫星系统。最具有代表性的是手机,属于蜂窝移动系统。 第一代个人移动通信采用的是模拟技术,使用频段为800/900MHs,称之为模拟移动通信系统。随着数字传输,时分多址和码分多址(CDMA)等技术的采用,很快进入第二代,频段900到1800 MHs.目前我国广泛使用GSM,,CDMA,,日本的JDC美国的JS-95。第二代移动通信系统在提供话音和低速数据业务方面已取得了很大成功。例如GSM提供了分组交换和分组传输方式的新数据业务(称为GPRS)。 ((理解))移动通信系统由移动台,基站,移动电话交换中心组成。移动台是移动的通信终端,它是接收无线信号的接收机。基站是与移动台联系的一个固定收发机,它接收移动台的无线信号,每个基站负责与一个特定区域的所有的移动台进行通信。基站与移动交换中心之间通过微波或有线信道交换信息,移动交换中心再与公共电话网进行连接。每个基站的有效区域既相互分割又彼此有所交叠,整个移动通信网就像是蜂窝,所以也称为“蜂窝式移动通信”。 当前是第三代移动通信系统(3G)正在迅速兴起,它将实现高质量的多媒体通信,包括话音通信,数据通信和图像通信等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值