Received

合集下载

receive词根词缀

receive词根词缀

receive词根词缀摘要:一、前言二、receive 的词根及词缀1.词根:ceive2.词缀:-re-三、receive 的意义及用法1.意义:接收、收到2.用法:不及物动词、及物动词四、receive 的派生词1.receipt:收据2.receiver:接收者3.reception:接待、接收五、总结正文:【前言】在日常学习和工作中,我们经常会接触到英文单词。

了解单词的词根和词缀有助于我们更好地理解和记忆单词。

本文将详细解析receive 这个词的词根和词缀,并探讨其意义及用法。

【receive 的词根及词缀】receive 这个词来源于拉丁语,其词根为ceive。

在拉丁语中,ceive 的意思是“抓住、握住”。

为了使这个词更符合英语语法,我们加上词缀-re-,形成receive。

【receive 的意义及用法】1.意义:receive 这个词在英语中的意义主要有两个,一个是“接收”,表示获得或接受某种物品或信息;另一个是“收到”,表示某物已经到达我们这里。

2.用法:receive 是一个多功能的动词,可以作为不及物动词,也可以作为及物动词。

作为不及物动词时,它的主语通常是表示人或物的名词,如:I received a letter.(我收到了一封信。

)作为及物动词时,它的主语通常是表示人的名词,如:She received the award.(她获得了这个奖项。

)【receive 的派生词】1.receipt:这个词是由receive 派生出来的名词,表示收据。

如:Please give me a receipt for the goods.(请给我一张商品的收据。

)2.receiver:这个词是由receive 派生出来的名词,表示接收者。

如:He is the receiver of the package.(他是这个包裹的接收者。

)3.reception:这个词是由receive 派生出来的名词,表示接待或接收。

receive的用法和搭配

receive的用法和搭配

receive的用法和搭配一、receive的用法及固定搭配receive是一个常用的动词,其含义为“接收”或“收到”。

在英语中,它有许多用法和固定搭配。

以下是对于receive这个词的详细介绍。

1. 接受礼物或奖励One of the most common uses of receive is to indicate the act of accepting a gift or reward. For example, "I received a lovely present from my friend" or "She received an award for her outstanding performance." In these sentences, receive is used to describe the action of accepting something given or bestowed upon someone.2. 接待或招待Receive can also be used to describe the act of welcoming or hosting someone. For instance, "The hotel receptionist received us warmly upon our arrival" or "The president received the foreign ambassadors at the state dinner." In both examples, receive conveys the idea of offering hospitality and creating a welcoming atmosphere.3. 收到信息或信函When it comes to receiving information or letters, receive is frequently used to indicate that one has obtained them. For instance, "I received an email with important instructions" or "He finally received a response to his job application." In these cases, receive implies the act of getting or being in possession of certain information through electronic means or written communication.4. 收到嘉宾、访客Receive is commonly used when referring to meeting guests or visitors formally. For example, "The mayor will receive the foreign delegation at city hall" or "The hostessreceives her guests in the living room." Here, receive suggests a more official context where individuals are greeted and welcomed as part of a formal event.5. 收到资金或支付Receive can also be used to describe the act of obtaining money or making payments. For instance, "The charity received a generous donation from an anonymous donor" or "He received his salary via direct deposit." In these examples, receive is used to convey the idea of acquiring or transferring funds.6. 接受教育或培训Another common use of receive is to indicate the act of undergoing education or training. For example, "He received his medical degree from Harvard University" or "The employees will receive training on the new software." In both instances, receive implies the acquisition of knowledge or skills through formal instruction.二、receive的其他用法除了上述常见的用法和固定搭配外,receive还有一些其他的使用方式。

receive和accept的区别例句

receive和accept的区别例句

receive 和 accept 的区别例句
本文介绍 receive 和 accept 两个动词的区别以及相关例句。

收件箱 (receive) 和接受 (accept) 是两个经常被混淆的动词。

虽然它们在某些情况下可以互换使用,但它们在含义和用法上存在一些差异。

收件箱 (receive) 通常表示被动地接收某物,而接受 (accept) 则表示主动地接受某物。

例如:
- I received a letter from my friend yesterday.(我昨天收到了一封朋友的信。

)
- She accepted the job offer last week.(她上周接受了那份工作。

)
收件箱 (receive) 可以表示收到某种信息或通知,而接受(accept) 则表示同意或赞同某种观点或行为。

例如:
- I received a notification on my phone.(我收到了手机上
的通知。

)
- He accepted the apology from his friend.(他接受了朋友
的道歉。

)
此外,接受 (accept) 还可以表示接纳或包容某种情况或事物。

例如:
- She accepted the fact that she would have to work on 周
末。

(她接受了必须周末工作的事实。

resubmitted manuscript received

resubmitted manuscript received

resubmitted manuscript received
"Resubmitted manuscript received" 表示重新提交的手稿已经收到。

这通常是在学术出版或其他类似的情境中使用的术语。

当作者对之前提交的手稿进行了修改或完善后,他们可能会将其重新提交给相关的机构或审稿人。

收到重新提交的手稿后,接下来的步骤可能包括进一步的审查、评估或处理。

这可能涉及审稿人对修改后的手稿进行再次评审,或者编辑团队对其进行处理,以确定是否满足出版的要求。

这个阶段对于作者来说是一个重要的节点,因为它意味着他们的努力和改进已经被接收并进入下一个阶段。

作者通常会期待收到关于手稿的反馈,以便了解是否还需要进一步的修改或是否可以进入后续的出版流程。

收到"Resubmitted manuscript received"的通知后,作者可能会感到一定的紧张和期待,同时也会希望自己的努力能够得到积极的回应。

在这个过程中,耐心等待反馈和与相关团队或审稿人的沟通是很重要的。

总的来说,"Resubmitted manuscript received"是手稿提交过程中的一个重要状态,表示修改后的手稿已经被接收,并且正在进行下一步的处理。

希望以上解释对你有所帮助!如果你还有其他问题或需要进一步的讨论,请随时告诉我。

英语口语:收到应该怎么说?

英语口语:收到应该怎么说?

英语口语:收到应该怎么说?【收到的英语口语怎么说】receive; get; achieve; obtain例句:I had a letter from my brother this morning .今早我收到哥哥的来信。

When can you take delivery of the car ?你什么时候才能收到那辆汽车?She 's had three letters from her friend .她已经收到朋友的三封来信。

I received a letter from my family yesterday .我昨天收到一封家信。

She received a letter from fitzpiers .她收到一封菲茨比尔斯的来信。

We accepted a princely gift , sum .我们收到了丰厚的礼物、充裕的款项。

I beg to acknowledge receipt of your letter .我已收到了你的来信。

We receive several new types cripts a day .我们一天收到几份打出的文稿。

【收到的英文是什么】received例句:The offerings made at his shrine were without number .他收到的礼物简直是难以数计。

The psychological advantage of direct control is impressive .直接控制所收到的心理效果很大。

News is coming in of a serious train crash in scotland .刚刚收到的消息说,苏格兰发生火车撞车重大事故。

We advertised the job and were deluged withapplications .我们登出了这项工作的广告,收到的申请书不计其数。

receive的用法和考点

receive的用法和考点

receive的用法和考点一、receive的定义及基本用法receive是一个英语动词,意为“收到”或“接待”。

它可以用于不同的情景和语境中,包括日常生活、商务交流和社交场合。

下面将详细介绍receive的基本用法和常见考点。

1.1 初步了解receive在最基本的用法中,receive多指接收来自外部的信息、物品或人员。

例如:- I received an email from my friend yesterday.(昨天我收到了朋友发来的电子邮件。

)- The company receives hundreds of job applications every month.(这家公司每个月都会收到数百份求职申请。

)- The hotel receptionist received the guests at the front desk.(酒店前台接待员在前台接待客人。

)1.2 receive作为被动语态在被动语态中,receive表示“被收到”或“被接待”。

此时,主语通常是所接受的人、物或服务的对象。

例如:- The package will be received by him tomorrow.(这个包裹明天将由他收取。

)- She was warmly received by her friends at the airport.(她受到了朋友们在机场的热情接待。

)- The report has not been well received by the audience.(这份报告没有得到观众的良好反响。

)二、receive的进阶用法与考点除了基本用法之外,receive还有一些进阶的用法和考点,包括以下几个方面:2.1 表示获得或接受奖励、礼物或荣誉receive可以用于表示获得奖励、礼物或荣誉等情况。

常见的搭配有:- receive an award(获得奖项)- receive a gift(收到礼物)- receive an honor(获得荣誉)例如:- He received an award for his outstanding performance in the competition.(他因在比赛中出色表现而获奖。

Received (received date) Revised (revised date)

Received (received date) Revised (revised date)

Automatic mapping of ASSIST applications using process algebraMarco AldinucciDept.of Computer Science,University of PisaLargo B.Pontecorvo3,Pisa I-56127,ItalyandAnne BenoitLIP,Ecole Normale Superieure de Lyon(ENS)46all´e e d’Italie,69364Lyon Cedex07,FranceReceived(received date)Revised(revised date)Communicated by(Name of Editor)ABSTRACTGrid technologies aim to harness the computational capabilities of widely distributed collections of computers.Due to the heterogeneous and dynamic nature of the set of grid resources,the programming and optimisation burden of a low level approach to grid computing is clearly unacceptable for large scale,complex applications.The development of grid applications can be simplified by using high-level programming environments.In the present work,we address the problem of the mapping of a high-level grid application onto the computational resources.In order to optimise the mapping of the application, we propose to automatically generate performance models from the application using the process algebra PEPA.We target applications written with the high-level environment ASSIST,since the use of such a structured environment allows us to automate the study of the application more effectively.Keywords:high-level parallel programming;ASSIST environment;Performance Eval-uation Process Algebra(PEPA);automatic model generation.1.IntroductionA grid system is a geographically distributed collection of possibly parallel,inter-connected processing elements,which all run some form of common grid middleware (e.g.Globus)[13].The key idea behind grid-aware applications is to make use of the aggregate power of distributed resources,thus benefiting from a computing power that falls far beyond the current availability threshold in a single site.However, developing programs able to exploit this potential is highly programming inten-sive.Programmers must design concurrent programs that can execute on large-scale platforms that cannot be assumed to be homogeneous,secure,reliable or centrally managed.They must then implement these programs correctly and efficiently.As a result,in order to build efficient grid-aware applications,programmers have to address the classical problems of parallel computing as well as grid-specific ones:Parallel Processing Letters1.Programming:code all the program details,take care about concurrency ex-ploitation,among the others:concurrent activities set up,mapping/scheduling, communication/synchronisation handling and data allocation.2.Mapping&Deploying:deploy application processes according to a suitablemapping onto grid platforms.These may be highly heterogeneous in archi-tecture and performance and unevenly connected,thus exhibiting different connectivity properties among all pairs of platforms.3.Dynamic environment:manage resource unreliability and dynamic availabil-ity,network topology,latency and bandwidth unsteadiness.Hence,the number and quality of problems to be resolved in order to draw a given QoS(in term of performance,robustness,etc.)from grid-aware applications is quite large.The lesson learnt from parallel computing suggests that any low-level approach to grid programming is likely to raise the programmer’s burden to an unacceptable level for any real world application.Therefore,we envision a layered, high-level programming model for the grid,which is currently pursued by several research initiatives and programming environments,such as ASSIST[19],eSkel[9], GrADS[17],ProActive[6],Ibis[18].In such an environment,most of the grid specific efforts are moved from programmers to grid tools and run-time systems. Thus,the programmers have only the responsibility of organising the application specific code,while the developing tools and their run-time systems deal with the interaction with the grid,through collective protocols and services[12].In such a scenario,the QoS and performance constraints of the application can either be specified at compile time or varying at run-time.In both cases,the run-time system should actively operate in order to fulfil QoS requirements of the application,since any static resource assignment may violate QoS constraints due to the very uneven performance of grid resources over time.As an example,AS-SIST applications exploit an autonomic(self-optimisation)behaviour.They may be equipped with a QoS contract describing the degree of performance the application is required to provide.The ASSIST run-time environment tries to keep the QoS contract valid for the duration of the application run despite possible variations of platforms’performance at the level of grid fabric[5].The autonomic features of an ASSIST application rely heavily on run-time application monitoring,and thus they are not fully effective for application deployment since the application is not yet running.In order to deploy an application onto the grid,a suitable mapping of application processes onto grid platforms should be established,and this process is quite critical for application performance.This problem can be addressed by defining a performance model of an ASSIST application in order to statically optimise the mapping of the application onto a heterogeneous environment.The model is generated from the source code of the application,before the initial mapping.It is expressed with the process algebra PEPA[15],designed for performance evaluation.The use of a stochastic model allows us to take into account aspects of uncertainty which are inherent to grid computing,and to use classical techniques of resolution based on Markov chains toAutomatic mapping of ASSIST applications using process algebra obtain performance results.This static analysis of the application is complemen-tary with the autonomic reconfiguration of ASSIST applications,which works on a dynamic basis.In this work we concentrate on the static part to optimise the map-ping,while the dynamic management is done at run-time.It is thus an orthogonal but complementary approach.Structure of the paper.The next section introduces the ASSIST high-level pro-gramming environment and its run-time support.Section3introduces the Per-formance Evaluation Process Algebra PEPA,which can be used to model ASSIST applications.These performance models help to optimise the mapping of the ap-plication.We present our approach in Section4,and give an overview of future working directions.Finally,concluding remarks are given in Section5.2.The ASSIST environment and its run-time supportASSIST(A Software System based on Integrated Skeleton Technology)is a pro-gramming environment aimed at the development of distributed high-performance applications[19,3].ASSIST applications should be compiled in binary packages that can be deployed and run on grids,including those exhibiting heterogeneous platforms.Deployment and run is provided through standard middleware services(e.g.Globus)enriched with the ASSIST run-time support.2.1.The ASSIST coordination languageASSIST applications are described by means of a coordination language,which can express arbitrary graphs of modules,interconnected by typed streams of data. Each stream realises a one-way asynchronous channel between two sets of endpoint modules:sources and sinks.Data items injected from sources are broadcast to all sinks.Modules can be either sequential or parallel.A sequential module wraps a sequential function.A parallel module(parmod)can be used to describe the parallel execution of a number of sequential functions that are activated and run as Virtual Processes(VPs)on items arriving from input streams.The VPs may synchronise with the others through barriers.The sequential functions can be programmed by using a standard sequential language(C,C++,Fortran,Java).A parmod may behave in a data-parallel(e.g.SPMD/apply-to-all)or task-parallel(e.g.farm)way and it may exploit a distributed shared state that survives the VPs lifespan.A module can nondeterministically accept from one or more input streams a number of input items,which may be decomposed in parts and used as function parameters to instantiate VPs according to the input and distribution rules specified in the parmod.The VPs may send items or parts of items onto the output streams,and these are gathered according to the output rules.An ASSIST application is sketched in Appendix A.We briefly describe here how to code an ASSIST application and its modules;more details on the particular application in Appendix A are given in Section4.1.In lines4–5four streams with type task t are declared.Lines6–9define endpoints of streams.Overall,Parallel Processing Letters ASSISTcompiler seq P1parmod VP VP VP binary les QoScontract ASSIST programresourcedescription(XML)VP VP VP VP VP VP VP VP VP output section input section binary code+XML (network of processes)ISM OSM P1P2VP VPVP VP VP VPMVP seq P2sourcecode Fig.An ASSIST application QoS contract are compiled in a set of executable codes and its meta-data [3].This information is used to set up a processes network at launch time.lines 3–10define the application graph of modules.In lines 12–16two sequential modules are declared:these simply provide a container for a sequential function invocation and the binding between streams and function parameters.In lines 18–52two parmods are declared.Each parmod is characterised by its topology ,input section ,virtual processes ,and output section declarations.The topology declaration specialises the behaviour of the VPs as farm (topol-ogy none ,as in line 41),or SMPD (topology array ).The input section en-ables programmers to declare how VPs receive data items,or parts of items,from streams.A single data item may be distributed (scattered,broadcast or unicast)to many VPs.The input section realises a CSP repetitive command [16].The virtual processes declarations enable the programmer to realise a parametric VP starting from a sequential function (proc ).VPs may be identified by an index and may synchronise and exchange data one with another through the ASSIST lan-guage API.The output section enables programmers to declare how data should be gathered from VPs to be sent onto output streams.More details on the ASSIST coordination language can be found in [19,3,2].2.2.The ASSIST run-time supportThe ASSIST compiler translates a graph of modules into a network of processes.As sketched in Fig.1,sequential modules are translated into sequential processes,while parallel modules are translated into a parametric (w.r.t.the parallelism de-gree)network of processes:one Input Section Manager (ISM),one Output Section Manager (OSM),and a set of Virtual Processes Managers (VPMs,each of them running a set of Virtual Processes).The actual parallelism degree of a parmod instance is given by the number of VPMs.All processes communicate via ASSIST support channels,which can be implemented on top of a number of grid middleware communication mechanisms (e.g.shared memory,TCP/IP,Globus,CORBA-IIOP,SOAP-WS).The suitable communication mechanism between each pair of processes is selected at launch time depending on the mapping of the processes [3].Automatic mapping of ASSIST applications using process algebra 2.3.Towards fully grid-aware applicationsASSIST applications can already cope with platform heterogeneity,either in space(various architectures)or in time(varying load)[5,2].These are definite fea-tures of a grid,however they are not the only ones.Grids are usually organised in sites on which processing elements are organised in networks with private ad-dresses allowing only outbound connections.Also,they are often fed through job schedulers.In these cases,setting up a multi-site parallel application onto the grid is a challenge in its own right(irrespectively of its performance).Advance reser-vation,co-allocation,multi-site launching are currently hot topics of research for a large part of the grid community.Nevertheless,many of these problems should be targeted at the middleware layer level and they are largely independent of the logical mapping of application processes on a suitable set of resources,given that the mapping is consistent with deployment constraints.In our work,we assume that the middleware level supplies(or will supply) suitable services for co-allocation,staging and execution.These are actually the minimal requirements in order to imagine the bare existence of any non-trivial, multi-site parallel application.Thus we can analyse how to map an ASSIST ap-plication,assuming that we can exploit middleware tools to deploy and launch applications[11].3.Introduction to performance evaluation and PEPAIn this section,we briefly introduce the Performance Evaluation Process Algebra PEPA[15],with which we can model an ASSIST application.The use of a process algebra allows us to include the aspects of uncertainty relative to both the grid and the application,and to use standard methods to easily and quickly obtain performance results.The PEPA language provides a small set of combinators. These allow language terms to be constructed defining the behaviour of components, via the activities they undertake and the interactions between them.We can for instance define constants(def=),express the sequential behavior of a given component (.),a choice between different behaviors(+),and the direct interaction betweencomponents(£¡L ,||).Timing information is associated with each activity.Thus,when enabled,an activity a=(α,r)will delay for a period sampled from the negative exponential distribution which has parameter r.If several activities are enabled concurrently,either in competition or independently,we assume that a race condition exists between them.When an activity is known to be carried out in cooperation with another component,a component may be passive with respect to that activity.This means that the rate of the activity is left unspecified,(denoted ),and is determined upon cooperation by the rate of the activity in the other component.All passive actions must be synchronised in thefinal model.The dynamic behaviour of a PEPA model is represented by the evolution of its components,as governed by the operational semantics of PEPA terms[15].Thus, as in classical process algebra,the semantics of each term is given via a labelledParallel Processing Lettersmulti-transition system(the multiplicity of arcs are significant).In the transition system a state corresponds to each syntactic term of the language,or derivative,and an arc represents the activity which causes one derivative to evolve into another. The complete set of reachable states is termed the derivative set and these form the nodes of the derivation graph,which is formed by applying the semantic rules exhaustively.The derivation graph is the basis of the underlying Continuous Time Markov Chain(CTMC)which is used to derive performance measures from a PEPA model.The graph is systematically reduced to a form where it can be treated as the state transition diagram of the underlying CTMC.Each derivative is then a state in the CTMC.The transition rate between two derivatives P and Q in the derivation graph is the rate at which the system changes from behaving as component P to behaving as Q.Examples of derivation graphs can be found in[15].It is important to note that in our models the rates are represented as ran-dom variables,not constant values.These random variables are exponentially dis-tributed.Repeated samples from the distribution will follow the distribution and conform to the mean but individual samples may potentially take any positive value.The use of such distribution is quite realistic and it allows us to use stan-dard methods on CTMCs to readily obtain performance results.There are indeed several methods and tools available for analysing PEPA models.Thus,the PEPA Workbench[14]allows us to generate the state space of a PEPA model and the in-finitesimal generator matrix of the underlying Markov chain.The state space of the model is represented as a sparse matrix.The PEPA Workbench can then compute the steady-state probability distribution of the system,and performance measures such as throughput and utilisation can be directly computed from this.4.Performance models of ASSIST applicationPEPA can easily be used to model an ASSIST application since such applications are based on stream communications,and the graph structure deduced from these streams can be modelled with PEPA.Given the probabilistic information about the performance of each of the ASSIST modules and streams,we then aim tofind information about the global behavior of the application,which is expressed by the steady-state of the system.The model thus allows us to predict the run-time behavior of the application in the long time run,taking into account information obtained from a static analysis of the program.This behavior is not known in advance,it is a result of the PEPA model.4.1.The ASSIST applicationAs we have seen in Section2,an ASSIST application consists of a series of modules and streams connecting the modules.The structure of the application is represented by a graph,where the modules are the nodes and the streams the arcs.We illustrate in this paper our modeling process on an example of a graph, but the process can be easily generalised to any ASSIST applications since theAutomatic mapping of ASSIST applications using process algebra M3M4M2M1s1s3s2Figure 2:Graph representation of our example application.information about the graph can be extracted directly from ASSIST source code,and the model can be generated automatically from the graph.A model of a data mining classification algorithm has been presented in [1].For the purpose of our methodology and in order to generalise our approach,we concentrate here only on the graph of an application.The graph of the application that we consider in this paper is similar to the one of [1],consisting of four modules.Figure 2represents the graph of this application.We choose this graph as an application example,since this is a very common workflow pattern.In such a schema,•one module (M1)is generating input,for instance reading from a file or ac-cessing a database;•two modules (M2,M3)are interacting in a client-server way;they can interact one or several times for each input,in order to produce a result;•the result is sent to a last module (M4)which is in charge of the output.4.2.The PEPA modelEach ASSIST module is represented as a PEPA component,and the different components are synchronised through the streams of data to model the overall application.The PEPA components of the modules are shown in Table 1.The modules are working in a sequential way:the module MX (X =1..4)is initially in the state MX1,waiting for data on its input streams.Then,in the state MX2,it processes the piece of data and evolves to its third state MX3.Finally,the module sends the output data on its output streams and goes back into its first state.The system evolves from one state to another when an activity occurs.The activity sX (X =1..4)represents the transfer of data through the stream X ,with the associated rate λX .The rate reflects the complexity of the communication.The activity pX (X =1..4)represents the processing of a data by module MX ,which is done at a rate µX .These rates are related to the theoretical complexity of the modules.A discussion on rates is done in Section 4.3.The overall PEPA model is then obtained by a collaboration of the different modules in their initial states:M 11£¡s 1M 21£¡s 2,s 3M 31£¡s 4M 41.4.3.Automatic generation of the modelThe PEPA model is automatically generated from the ASSIST source code.This task is simplified thanks to some information provided by the user directly in theParallel Processing Letterssource code,and particularly the rates associated to the different activities of the PEPA model.The rates are directly related to the theoretical complexity of the modules and of the communications.In particular,rates of the communications depend on:a) the speed of the links and b)data size and communications frequencies.A module may include a parallel computation,thus its rate depends on a)computing power of the platforms running the module and b)parallel computation complexity,its size, its parallel degree,and its speedup.Observe that aspect a)of both modules and communications rates strictly depends on mapping,while aspect b)is much more dependent on the application’s logical structure and algorithms.We are interested in the relative computational and communication costs of the different parts of the system,but we define numerical values to allow a numerical resolution of the PEPA model.This information is defined directly in the ASSIST source code of the application by calling a rate function,in the body of the main procedure of the application(Appendix A,between lines9and10).This function takes as a parameter the name of the modules and streams,and it should be called once for each module and each stream tofix the rates of the corresponding PEPA activities.We can define several sets of rates in order to compare several PEPA models.The values for each sets are defined between brackets,separated with commas,as shown in the example below.rate(s1)=(10,1000);rate(s2)=(10,1);rate(s3)=(10,1);rate(s4)=(10,1000);rate(M1)=(100,100);rate(M2)=(100,100);rate(M3)=(1,1);rate(M4)=(100,100);The PEPA model is generated during a precompilation of the source code of AS-SIST.The parser identifies the main procedure and extracts the useful information from it:the modules and streams,the connections between them,and the rates of the different activities.The main difficulty consists in identifying the schemes of input and output behaviour in the case of several streams.This information can be found in the input and output section of the parmod code.Regarding the input section,the parser looks at the guards.Details on the different types of guards can be found in[19,3].Table1:PEPA model for the exampleM11def=M12M12def=(p1,µ1).M13M13def=(s1,λ1).M11M21def=(s1, ).M22+(s2, ).M22 M22def=(p2,µ2).M23M23def=(s3,λ3).M21+(s4,λ4).M21M31def=(s3, ).M32 M32def=(p3,µ3).M33 M33def=(s2,λ2).M31M41def=(s4, ).M42 M42def=(p4,µ4).M43 M43def=M41Automatic mapping of ASSIST applications using process algebra As an example,a disjoint guards means that the module takes input from ei-ther of the streams when some data arrives.This is translated by a choice in the PEPA model,as illustrated in our example.However,some more complex behaviour may also be expressed,for instance the parmod can be instructed to start execut-ing only when it has data from both streams.In this case,the PEPA model is changed with some sequential composition to express this behaviour.For example, M21def=(s1, ).(s2, ).M22+(s2, ).(s1, ).M22.Currently,we are not support-ing variables in guards,since these may change the frequency of accessing data on a stream.Since the variables may depend on the input data,we cannot automatically extract static information from them.We plan to address this problem by asking the programmer to provide the relative frequency of the guard.The considerations for the output section are similar.The PEPA model generated by the application for a given set of rates is repre-sented below:mu1=100;mu2=100;mu3=1;mu4=100;la1=10;la2=10;la3=10;la4=10;M11=M12;M12=(p1,mu1).M13;M13=(s1,la1).M11;M21=(s1,infty).M22+(s2,infty).M22;M22=(p2,mu2).M23;M23=(s3,la3).M21+(s4,infty).M21;M31=(s3,infty).M32;M32=(p3,mu3).M33;M33=(s2,la2).M31;M41=(s4,la4).M42;M42=(p4,mu4).M43;M43=M41;(M11<s1>(M21<s2,s3>M31))<s4>M414.4.Performance resultsOnce the PEPA models have been generated,performance results can be ob-tained easily with the PEPA Workbench[14].The performance results are the probability to be in either of the states of the system.We compute the probability to be waiting for a processing activity pX,or to wait for a transfer activity sX.Some additional information is generated in the PEPA source code(file example.pepa) to specify the performance results that we are interested in.This information is the following:perf_M1=100*{M12||**||**||**};perf_M2=100*{**||M22||**||**}; perf_M3=100*{**||**||M32||**};perf_M4=100*{**||**||**||M42}; perf_s1=100*{M13||M21||**||**};perf_s2=100*{**||M21||M33||**}; perf_s3=100*{**||M23||M31||**};perf_s4=100*{**||M23||**||M41};The expression in brackets describes the states of the PEPA model corresponding to a particular state of the system.For each module MX(X=1..4),the result perf MX corresponds to the percentage of time spent waiting to process this module.The steady-state probability is multiplied by100for readability and interpretation rea-sons.A similar result is obtained for each stream.We expect the complexity of the PEPA model to be quite simple and the resolution straightforward for most of the ASSIST applications.In our example,the PEPA model consists in36states andParallel Processing Letters80transitions,and it requires less than0.1seconds to generate the state space of the model and to compute the steady state solution,using the linear biconjugate gradient method[14].Experiment1.For the purpose of our example,we choose the following rates, meaning that the module M3is computationally more intensive than the other modules.In our case,M3has an average duration pared to0.01sec. for the others(µ1=100;µ2=100;µ3=1;µ4=100).The rates for the streams correspond to an average duration of0.1sec(λ1=10;λ2=10;λ3=10;λ4=10). The results for this example are shown in Table2(row Case1).These results confirm the fact that most of the time is spent in module M3,which is the most computationally demanding.Moreover,module M1(respectively M4) spends most of its time waiting to send data on s1(respectively waiting to receive data from s4).M2is computing quickly,and this module is often receiving/sending from stream s2/s3(little time spent waiting on these streams in comparison with streams s1/s4).If we study the computational rate,we can thus decide to map M3alone on a powerful computing site because it has the highest value between the different steady states probabilities of the modules.One should be careful to map the streams s1 and s4onto sufficiently fast network links to increase the overall throughput of the network.A mapping that performs well can thus be deduced from this information, by adjusting the reasoning to the architecture of the available system. Experiment2.We can reproduce the same experiment but for a different ap-plication:one in which there are a lot of data to be transfered inside the loop. Here,for one input on s1,the module M2makes several calls to the server M3 for computations.In this case,the rates of the streams are different,for instance λ1=λ4=1000andλ2=λ3=1.The results for this experiment are shown in Table2(row Case2).In this table, we can see that M3is quite idle,waiting to receive data89.4%of the time(i.e.this is the time it is not processing).Moreover,we can see in the stream results that s2 and s3are busier than the other streams.In this case a good solution might be to map M2and M3on to the same cluster,since M3is no longer the computational bottleneck.We could thus have fast communication links for s2and s3,which are demanding a lot of network resources.Table2:Performance results for the example.Modules StreamsM1M2M3M4s1s2s3s4 Case1 4.2 5.167.0 4.247.0 6.7 6.747.0Case252.152.210.652.1 5.210.610.6 5.2Automatic mapping of ASSIST applications using process algebra 4.5.Analysis summaryAs mentioned in Section4.3,PEPA rates model both aspects strictly related to the mapping and to the application’s logical structure(such as algorithms imple-mented in the modules,communication patterns and size).The predictive analysis conducted in this work provides performance results which are related only to the application’s logical behavior.On the PEPA model this translates on the assump-tion that all sites includes platforms with the same computing power,and all links have an uniform speed.In other words,we assume to deal with a homogeneous grid to obtain the relative requirements of power among links and platforms.This information is used as a hint for the mapping on a heterogeneous grid.It is of value to have a general idea of a good mapping solution for the application, and this reasoning can be easily refined with new models including the mapping peculiarities,as demonstrated in our previous work[1].However,the modeling technique exposed in the present paper allows us to highlight individual resources (links and processors)requirements,that are used to label the application graph.These labels represent the expected relative requirements of each module(stream) with respect to other modules(streams)during the application run.In the case of a module the described requirement can be interpreted as the aggregate power of the site on which it will be mapped.On the other hand,a stream requirement can be interpreted as the bandwidth of the network link on which it will be mapped.The relative requirements of parmods and streams may be used to implement mapping heuristics which assign more demanding parmods to more powerful sites,and more demanding streams to links exhibiting higher bandwidths.When a fully automatic application mapping is not required,modules and streams requirements can be used to drive a user-assisted mapping process.Moreover,each parmod exhibits a structured parallelism pattern(a.k.a.skele-ton).In many cases,it is thus possible to draw a reliable relationship between the site fabric level information(number and kind of processors,processors and network benchmarks)and the expected aggregate power of the site running a given parmod exhibiting a parallelism pattern[5,4,8].This may enable the development of a map-ping heuristic,which needs only information about sites fabric level information, and can automatically derive the performance of a given parmod on a given site.The use of models taking into account both of the system architecture charac-teristics can then eventually validate this heuristic,and give expected results about the performance of the application for a specified mapping.4.6.Future workThe approach described here considers the ASSIST modules as blocks and does not model the internal behavior of each module.A more sophisticated approach might be to consider using known models of individual modules and to integrate these with the global ASSIST model,thus providing a more accurate indication of the performance of the application.At this level of detail,distributed shared。

received的用法及短语

received的用法及短语

received的用法及短语一、什么是"received"及其基本用法(400字)"Received"(接受)是一个常用的英语动词,用来表示接受、获得或收到某物。

它可以作为过去分词和现在分词使用,并可与其他词组合成不同表达方式。

1. "be received"当"received"作为过去分词时,通常与助动词"be"连用形成被动语态,表示某人或某物被接受了。

例如:- The package was received by the recipient yesterday. (昨天包裹已经被收件人签收)2. "have received"当"received"作为现在分词时,可与助动词"have"连用,表示某人或某物已经获得/收到了某种东西。

例如:- I have received your email and will reply soon. (我已经收到你的邮件,会尽快回复)3. "receive from"另外一个常见的短语是“receive from”,意思是从某处或者某人那里接收/获得/收到某物。

例如:- I received a gift from my friend on my birthday. (我生日那天从朋友那里收到了一份礼物)二、常见短语及用法(600字)除了基本的用法之外,“received”还可以和其他单词或短语结合使用,形成更多的表达方式。

以下是一些常见的短语及其用法:1. well-received"well-received"(广受欢迎)是一个形容词短语,用来描述某事物或者情景受到了积极的反响和喜爱。

例如:- The new product was well-received by customers, resulting in a significant increase in sales. (新产品得到了顾客的热烈好评,销售额大幅增加)2. received wisdom"received wisdom"(传统智慧)指的是被广泛接受并认为是真实或正确的观点、想法或信条。

receive的用法和辨析

receive的用法和辨析

receive的用法和辨析你们知道receive的用法吗?我们一起来学习学习吧,下面就和大家分享,来欣赏一下吧。

词汇精选:receive的用法和辨析一、详细释义:v.收到,接到,得到[I,T]例句:I receive quarterly bank statements.我每叁个月都收到一份银行结单。

例句:We were very pleased to receive your invitation.很高兴接到你们的邀请。

经受,受到[I,T]例句:He received more of the blame than anyone when the plan failed to work.计划失败后,他受到了比别人更多的指责。

例句:She was suffering from whiplash injuries received in a car crash.她在车祸中颈部扭伤。

接见,迎接,招待;接纳[I,T]例句:How did he receive the suggestion?他接纳这建议吗?例句:The following evening the duchess was again receiving guests.第二天晚上公爵夫人又在会客。

对…作出反应;回应[I,T]例句:The resolution had been received with great disappointment within the PLO.巴解组织内部对决议表现出极大失望。

例句:The proposals have been well received by many deputies.这些提议在许多代表中反响不错。

接收[I]例句:Email allows users to electronically transmit and receive messages, text, or data.电子函件使用户可以用电子手段传递和接收消息、文本和数据。

well received在邮件中的用法 -回复

well received在邮件中的用法 -回复

well received在邮件中的用法-回复表达意见和想法的最常用方式之一是通过电子邮件进行沟通。

在电子邮件中,我们常常需要使用一些短语和表达方式来强调某些观点或强调对方可能对某个主题的积极反应。

"Well received"是其中之一,它表示某事或某个主题在接收者中获得了积极的反馈。

文章题目:在电子邮件中使用"well received"的典型用法及技巧导言:电子邮件已成为现代社会中最常用的沟通工具之一。

人们用它与他人交流、分享信息和表达意见。

在电子邮件中,我们常常希望以一种积极的方式表达自己的观点,并强调某个主题或观点在对方中获得了赞同或赞扬。

这时,我们可以使用短语"well received"来传达这种意思。

本文将详细介绍"well received"在邮件中的常见用法,并为你提供一些建议和技巧。

一、用于表达肯定意见和观点1. 强调对方肯定的回复:当你在电子邮件中表达某种观点或意见时,如果对方以肯定或赞同的方式回复你,你可以使用"Thank you for your positive response. I'm glad to hear that my suggestion was well received."(感谢您的积极回应,我很高兴听到我的建议受到了肯定。

)这样,你可以突出对方对你观点的认可。

2. 表达对某个想法的肯定态度:当你希望赞扬或肯定对方提出的某个观点或建议时,你可以使用"Well received"来表达这种肯定。

例如,"Your suggestion to improve ourmarketing strategy was well received by the team. We will definitely take it into consideration."(团队对于你改进我们的市场策略的建议表示认可,我们一定会加以考虑。

we do have received 的用法

we do have received 的用法

"We do have received" 的用法1. 介绍“We do have received” 是一个英语句子,其中包含了助动词“do”和动词“have received”。

在英语语法中,助动词与动词搭配使用,来表达时态、语气等信息。

而“have received”是现在完成时态的动词短语,表示已经完成的动作或者状态。

2. 助动词“do”与动词短语的搭配“do”是助动词,一般用来加强语气或者疑问句的构成。

在肯定句中,“do”往往和动词原形搭配使用,构成肯定句的结构。

例如:“We do have received the package.” 在这个句子中,“do”加强了动词短语“have received”。

3. “have received” 的现在完成时态“have received”是现在完成时态的动词短语,表示已经完成的动作或者状态。

现在完成时态是指过去发生的动作对现在造成的影响。

例如:“I have finished my homework.” 在这个句子中,“have finished”表示“已经完成”,并且现在的状态是“已经完成了作业”。

4. 实际应用在实际应用中,“We do have received”可以用来表达已经收到某样东西或者完成某个动作。

比如在商务信函中,“We do havereceived your payment.” 可以表示“我们已经收到了你的付款”。

在口语中,也可以使用这种结构来强调已经完成的动作或者状态。

5. 总结“We do have received”是一个正式的英语句子,其中包含了助动词“do”和动词短语“have received”。

它可以用来表示已经完成的动作或者状态,具有一定的强调语气。

在语法上属于现在完成时态的用法。

在书面和口头表达中都可以使用,但需要注意上下文的适当性和语境的准确性。

“我们确实已经收到”是一个常见的表达方式,用于强调或确认已经收到某种信息、物品或资金。

英式英语 received pronounciation -回复

英式英语 received pronounciation -回复

英式英语received pronounciation -回复为什么英式英语接受发音(Received Pronunciation)在英国被视为标准发音,以及其演变和影响。

在英国,英式英语接受发音(Received Pronunciation)被视为标准发音形式,并且在过去几个世纪中对英国英语的发音产生了深远的影响。

本文将从该发音形式被视为标准的原因、其历史演变以及在英国社会中的影响三个方面,逐步分析英式英语接受发音的重要性。

首先,为什么英式英语接受发音被视为英国标准发音?这可以追溯到19世纪末和20世纪初,当时英国面临着社会、政治和教育上的变革。

在此期间,伦敦成为了英国的政治和商业中心,并且英国帝国的影响力迅速扩大。

因此,伦敦南部的方言开始在英国的社会上占据重要地位。

此外,英式英语接受发音还受到了英国教育体系的推动与支持。

随着英国中产阶级的崛起,对英文教育的需求也在增加,而英式英语接受发音作为标准发音形式,迅速传播到了学校和高等教育机构。

这种传播效应导致了英式英语接受发音在整个英国教育系统中的普及。

另外,持续的媒体影响力也加强了这种标准发音形式的传播。

从BBC广播公司的创办到电视台的普及,英式英语广播和电视播音员以其清晰准确的发音形式成为了大众的借鉴对象。

这种媒体上的反馈和认同进一步巩固了英式英语接受发音作为英国标准发音的地位。

然而,英式英语接受发音并非一成不变的,它也经历了演变和变化。

在过去几十年中,随着社会变革和多元文化的兴起,英国社会对于发音的态度也发生了变化。

母语非英式英语的移民和英国本土的方言多样性都影响了英国英语的发音形式。

尽管如此,英式英语接受发音仍然在英国社会中具有重要的地位。

英式英语接受发音在英国社会中的影响主要体现在教育、职业和社会地位方面。

在英国的高等教育中,语音教学一直强调学习标准发音,因此能够流利地掌握英式英语接受发音对学生的学术和职业发展至关重要。

此外,在许多职业领域,拥有标准发音被认为是一种社会和职业资本,对于寻求高薪职位和更好的职业机会的人来说尤为重要。

receive的用法总结大全

receive的用法总结大全

receive的用法总结大全(学习版)编制人:__________________审核人:__________________审批人:__________________编制学校:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。

文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如英语单词、英语语法、英语听力、英语知识点、语文知识点、文言文、数学公式、数学知识点、作文大全、其他资料等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor.I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!In addition, this shop provides various types of classic sample essays, such as English words, English grammar, English listening, English knowledge points, Chinese knowledge points, classical Chinese, mathematical formulas, mathematics knowledge points, composition books, other materials, etc. Learn about the different formats and writing styles of sample essays, so stay tuned!receive的用法总结大全receive的意思vt.& vi. 收到;接到;接纳;接待vt. 接收;受理;欢迎;承受vi. 接到,获得;接见,欢迎;[电子学] 接收;[橄榄球] 接球receive的用法用作动词(v.)用作不及物动词S+~(+A)Our TV receives well since we had a new antenna put on. 自从安装了新天线以来,我们的电视机接收良好。

收到的英文是什么

收到的英文是什么

收到的英文是什么你的愿望,我确切地收到了。

下面店铺为大家带来收到的英语意思和相关用法,欢迎大家一起学习!收到的英语意思receive收到的相关英语例句1. I got a message you were trying to reach me.我收到一条留言,说你想跟我联系。

2. I was so thrilled to get a good report from him.收到他的好消息让我欣喜若狂。

3. A few days earlier he had received a telegram from Lord Lloyd.几天前,他收到劳埃德勋爵发来的一封电报。

4. I have received neither an acknowledgment nor a reply.我未收到任何复函或答复。

5. He personally had received orders from Commander Lehmann to scuttle the ship.他个人已收到莱曼司令要求凿沉轮船的命令。

6. The report had not been received with undiluted enthusiasm.这份报告并未收到热烈的反响。

7. By Friday at 5:30 p.m., I still hadn't heard from Lund.直到周五下午5点半,我仍未收到伦德的消息。

8. Drop us a line, it's always great to hear from you.给我们写封短信,能收到你的信总是让人很高兴。

9. The new dispensation proved a success, certainly with the business community.新的制度收到了成效,当然也包括商业界。

10. I had a letter from Jane. She asks after you.我收到了一封简写来的信。

accept与receive的用法区别是什么 主要区别及例句

accept与receive的用法区别是什么 主要区别及例句

accept与receive的用法区别是什么主要区别及例句Accept是指主观上自愿主动去接受、接纳,也可以说是思考过某人或某物在某方面足够好、满足自己的期望而接受。

Receive是指客观上的接受、接收这种行为和动作,并不涉及主观意愿,像接受邮件、信息、信号、请柬等等。

accept与receive的用法区别1.receive通常指被动地“收到”或“接到”,而accept则指主动地“接受”。

如:We haven’t received his letter for a long time.我们很久没有收到他的来信了。

She offered him a lift and he accepted (it).她请他坐她的车,他就领情了。

比较并体会:She received his present,butshe didn’t accept it.她收到了他的礼物,但是没有接受。

注意:有时用词要视语言习惯而定,而不能简单地认为receive=收到,accept=接受。

如“接受礼物”说成英语是accept a gift,而“接受教育”却是receive an education。

2.表示“接见”、“接待”时,要用receive而不用accept。

如:She was warmly received.她受到热情接待。

accept与receive的用法例句She was quite satisfied with the boy so she readily accepted the small gift.她对那个男孩挺满意的,所以欣然接受了他的小礼物。

The security guard patiently explained to him that he could not bring electronics into the room. He finally accepted.保安耐心地跟他解释说不能带电子产品进入房间,他最终接受了。

接收英文名词

接收英文名词

“接收”的英文名词可以是"reception"或"receipt"。

例如:
- The hotel provides excellent reception services.(这家酒店提供优质的接待服务。


- I received a receipt for the payment.(我收到了付款的收据。


这两个词在不同的语境中都可以表示“接收”的意思,但具体用法可能会有所不同。

"Reception" 更强调接收的行为或过程,如接待、接收信号等;"receipt" 则更侧重于收到的物品或文件,如收据、收条等。

当然,还有其他一些与“接收”相关的英文名词,比如"acceptance"(接受)、"receiving"(接收)等,具体使用哪个词汇要根据上下文和表达的需要来决定。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Efficiency of Rotational Operators for Geometric Manipulation of Chain MoleculesChaok Seok* and Evangelos A. Coutsias†,*Department of Chemistry, College of Natural Sciences, Seoul National University, Seoul 151-747, Korea*E-mail: chaok@snu.ac.kr†Department of Mathematics and Statistics, University of New Mexico, Albuquerque, New Mexico 87131, USA*E-mail: vageli@Received July 23, 2007Geometric manipulation of molecules is an essential elementary component in computational modelingprograms for molecular structure, stability, dynamics, and design. The computational complexity oftransformation of internal coordinates to Cartesian coordinates was discussed before.1The use of rotationmatrices was found to be slightly more efficient than that of quaternion although quaternion operators havebeen widely advertised for rotational operations, especially in molecular dynamics simulations of liquids wherethe orientation is a dynamical variable.2 The discussion on computational efficiency is extended here to a moregeneral case in which bond angles and sidechain torsion angles are allowed to vary. The algorithm ofThompson3 is derived again in terms of quaternions as well as rotation matrices, and an algorithm with optimalefficiency is described. The algorithm based on rotation matrices is again found to be slightly more efficientthan that based on quaternions.Key Words : Rotation operator, Rotation matrix, Quaternion, Internal coordinatesIntroductionCartesian coordinate modeling is popular in molecular studies,for example, in molecular dynamics simulations of biomolecules.4,5In many other situations, internal coordi-nates are a natural choice when constraints on internal coordinates such as bond lengths and bond angles are to be implemented to reduce the number of degrees of freedom. Additional dihedral angle constraints from experiments or structures of homologous protein sequences can be easily incorporated in internal coordinates.If the dihedral angles are taken from the actual structure, and the bond lengths and bond angles are fixed at ideal values, the degree of deviation from the actual structure increases with the chain length. For example, a protein structure with 800 amino acids can show RMSD (Root-Mean-Square Deviation) as large as 20 Å if all the bond lengths and bond angles are replaced with ideal values. However, changes in the bond lengths and angles can be absorbed into small variations in dihedral angles to accurately represent the structure.In Ref. 6, it is shown that protein structures can be represented very accurately (within 0.3 Å) with ideal bond lengths and bond angles if dihedral angles are slightly modified to minimize RMSD.For this reason, strategies to take a reduced number of degrees of freedom in internal coordinates are popular in protein structure prediction and design studies.When internal coordinates are employed for geometry representation, conversion of the internal coordinates to Cartesian coordinates is necessary because most of the realistic energy functions or scoring functions involve terms that are conveniently evaluated in Cartesian coordinates. The transformation requires rotation operators: quatern-ions,7,8 rotation matrices,9 and other transformations10 have been used. (See Ref. 1 for more detailed discussions.) Alvarado and Kazerounian1showed that operation in rotation matrix is the most efficient for typical protein chains, and operation using quaternion in the matrix form is almost equivalent. A more general system than that in Ref. 1 is considered here in that bond angles are not required to be kept constant and side chains are not rigid. An efficient algorithm, which is equivalent to that of Thompson,3is derived by employing a simple reference state and perform-ing rotations in the reverse order. It is shown again that the method using rotation matrix is slightly more efficient than quaternion.A method that requires minimal number of rotation operations is described below. The method can be described in abstract terms, considering rotations as building blocks. The method is first described in the context of quaternion operators for convenience, and the same method is stated in terms of rotation matrices later. Efficiencies of the two methods using quaternions and rotation matrices are then compared.Method of Constructing a Chain Moleculewith Minimal Number of OperationsA linear chain involving N atoms is considered. Branches can be easily added once the backbone is constructed. This method can be combined with an analytical loop closure algorithm11to manipulate chains with internal loops, for example, polypeptides with disulfide bonds or cyclic chains.A linear chain can be fully described by N sets of bond lengths b i, bond angles θi, and dihedral angles φi as follows:, (1) P N = b i, θi, φi(), i = 1, …, N{}where the backbone atoms of the chain are numbered from 1to N , b i is the bond length between the nodes at i −1 and i , θi is the bond angle formed by the three nodes i −2, i −1, and i ,and φi is the dihedral angle defined by the four nodes i −3,i −2, i −1, and i . Six degrees of freedom, b 1, θ1, θ2, φ1, φ2, and φ3, do not affect the internal geometry of the chain, but define the absolute location and orientation of the chain in space with respect to ‘virtual’ nodes i =−2, −1, and 0.Therefore, the internal geometry of the chain can be fully described by N −1 bond lengths, N −2 bond angles, and N −3dihedral angles.To construct the molecule, simple rotations are applied starting from a simple initial arrangement. A straight, linear conformation which is laid along the positive x -axis is taken as the initial geometry. The initial arrangement is defined by.(2)Next, Cartesian coordinates for the nodes are determinedsuccessively. Placing successive atoms requires a rotation at each step, to the desirable θi and φi values. There is a “best”way for performing these rotations.Recall that 2,12 rotating a vector v about axis u by angle w is affected through conjugation by the quaternion q,(3)with q given by.(4)Here, ‘*’ is the operator of quaternion multiplication,defined below (see Eq. 20). The i -th link in the chain is placed by performing, in succession, all indicated rotations along the chain about the local axes u k by w k , where k = 1, 2,…, i .The net quaternion defining this rotation, q i , is constructed by the product of individual quaternions as,(5)where p 1 and p 2 can be set to unit quaternions (p *p =1) if the node 1 and 2 are to be placed on the x -axis for simplicity. It is important to note that in this construction, the axes of each successive rotation, u k are determined by the effect of allprevious rotations on the initial vector, as.(6)However, by carrying out the rotations in the reverse order, the same net rotation can be affected by utilizing the initial axes as.(7)The reason for this, obvious geometrically, can be also seen as follows: (8).is the multiplication of , rotation about the x -axisby φi , and p z (θi ), rotation about the z -axis by π−θi :. (9)This construction is understood as follows: start morphingthe chain from its end, node 1; rotate the bond vector (b i , 0,0) about the positive z -axis by angle π−θi (this enforces correct bond angle at node i ); rotate about the positive x -axis by angle φi to create the proper dihedral angle; then apply the rotation accumulated by placement of all the previous atoms.The rotations are simple, either around the x - or z -axis, and always applied to a vector on the x -axis. The algorithm can thus be implemented very efficiently. The calculation of the Cartesian coordinate R i for the i th node is now collected as(10), (11)where i =1, 2, …, N . R 0 and first few quaternions can be chosen to give simple arrangement for the first few atoms when only internal arrangement is of interest, or be chosen to place the chain in a precise location and orientation depending on the purposes.Comparison of Rotation Matrix and Quaternion Methods Rotation matrix method. One can construct a 3×3rotation matrix U i for each (θi ,φi ) pair, and multiply by a vector to get,(12)where r 0 is an arbitrary unit vector. The i -th rotation matrix U i depends on all the angles indexed 1 through i because the axis of rotation changes with previous angles. This can be avoided if rotations are performed in the reverse order:, (13)where the superscript 0 implies rotation about fixed axes.The rotation matrix can be expressed as a multiplication of two rotation matrices and , where U z is matrix for rotation by π−θi around the z -axis, and U x for rotation by φi around the x -axis. This simplification is madepossible by setting r 0 equal to a unit vector along the x -axis. The resulting isP N o= b i , π, 0(), i = 1, …, N {}v v ′→ = q *v *q cq = cos w 2---, u sin w2---⎝⎠⎛⎞q i = p i *…*p 2*p 1, i = 1, 2, …, N u k 0u k = q k 1–*u k 0*q k 1–cq i = p i *…*p 2*p 1 = p 10*p 20…*p i 0q i = p i *q i 1–= cos w i 2----, u i sin wi 2----⎝⎠⎛⎞*q i 1–= cos w i 2----, q i 1–*u i *q i 1–c[]sin w i 2----⎝⎠⎛⎞*q i 1–= q i 1–*cos w i 2----, u i 0 sin w i 2----⎝⎠⎛⎞*q i 1–c*q i 1–= q i 1–*p i 0p i 0p x φi ()p i 0= p x φi ()*p z θi ()= cos φi 2---, eˆx sin φi 2---⎝⎠⎛⎞*cos πθi –2-------------, e ˆz sin πθi –2-------------⎝⎠⎛⎞q i = q i 1–*cos φi 2---, eˆx sin φi 2---⎝⎠⎛⎞*cos πθi –2-------------, e ˆz sin πθi –2-------------⎝⎠⎛⎞R i = R i 1– + b i q i eˆx q i cR i = R i 1– + b i U i θi ,φi ,…,θ1,φ1()U i 1–θi 1–,φi 1–,…,θ1,φ1()…U 1θi ,φi ()r 0R i = R i 1– + b i U 10θ1,φ1()U 20θ2,φ2()…U i 0θi ,φi ()e ˆx U i 0U z θi ()U x φi ()eˆx U i 0.(14)Each node i is added to a growing chain with i −1 nodes by updating the accumulated rotation,,(15)applying the rotation on he vector (b i ,0,0), and translating the resulting vector by R i -1.The computational cost of this procedure is counted as follows:1. Calculation of cosines and sines, cos φi , sin φi , cos θi , and sin θi .2. Rotation update, (12 multiplications and 6 additions).3. Rotation update, (12 multiplications and 6 additions).4. First column of (no cost).5. Scaling by b i and shift by R i −1 (3 multiplications and 3additions).In fact, the above algorithm is equivalent to the algorithm described by Thompson 3 in 1967 using rotation matrices in a local coordinate system. A physical procedure of chain construction is provided here, and an algorithm using quaternions can be easily derived using this procedure, as shown above.The computational cost of adding an atom at a branching point is the same as the above if the rotation matrix V i has to be updated for later atoms connected to it. If an atom is terminal, only the first column of that rotation matrix is required, which is. (16)The cost of adding a terminal node is therefore 11 multi-plications and 6 additions for Eq. (16) and 3 multiplications and 3 additions for scaling by b i and shift by R i −1, in addition to the cost of calculating cosines and sines.Quaternion method. Quaternions, instead of rotation matrices, can be used to accumulate successive rotations as follows:, (17)where is given by Eq. (9). The four components of thequaternions and are,(18),(19)Noting 12 that multiplication of two quaternions a = (a 0, a )and b =(b 0, b ) is given by,(20)and the rotation matrix corresponding to quaternion q = (q 0,q 1, q 2, q 3) is, (21)the cost of computation for adding atom i is counted as follows:1. Division of the angles θi and φi by 2 (2 divisions).2. Calculation of cosines and sines, and .3. Quaternion update, (8 multiplications,4 additions).4. Quaternion update, (8 multiplications, 4additions).5. First column of U (q i )/2 (6 multiplications, 4 additions).6. Scaling by 2b i and shift by R i −1 (4 multiplications, 3additions).The computational cost of adding a terminal atom is the same as above because q i needs to be calculated to get the first column of U (q i )/2.Comparison of computational efficiency. The minimum number of mathematical operations required for calculation of the position of one atom to be added to a growing chain is summarized in Table 1.The total number of operations for constructing the whole chain is approximately the number of atoms times the above numbers. Note that this linear dependence on the number of atoms comes from the reverse rotation. If the operations cos and sin are assumed to be 20 times more expensive than +,−, ×, and ÷, which are assumed to be equal in computational time, the relative computational costs are 122and 123 for rotation matrix and quaternion methods,respectively. If, alternatively, the computation of cos and sin is performed using the familiar half-tangent formulasU i 0θi ,φi () = U x φi ()U z θi ()= 1000cos φi sin φi –0sin φi cos φi⎝⎠⎜⎟⎜⎟⎜⎟⎛⎞cos θi –sin θi –0sin θi cos θi –0001⎝⎠⎜⎟⎜⎟⎜⎟⎛⎞V i = U 10U 20…U i 1–0U i 0= V i 1–U i 0V i ′ = V i 1–U x φi ()V i = V i ′U z θi ()U i 0V i 1–cos θi –sin θi cos φisin θi sin φi ⎝⎠⎜⎟⎜⎟⎜⎟⎛⎞R i = R i 1– + b i p 10p 20…p i 0()eˆx b i p 10p 20…p i 0()cp i 0p x φi ()p z φi ()p x φi () = cos φi 2---, sin φi 2---, 0, 0⎝⎠⎛⎞p z θi () = cos πθi –2-------------, 0, 0, sin πθi –2-------------⎝⎠⎛⎞a *b = a 0b 0−a b ⋅, a 0b + b 0a + a b ×()U q () = 2q 02q 121/2–+q 1q 2q 0q 3–q 1q 3q 0q 2–q 1q 2+q 0q 3q 02q 221/2–+q 2q 3q 0q 1–q 1q 3q 0q 2–q 2q 3+q 0q 1q 02q 321/2–+⎝⎠⎜⎟⎜⎟⎜⎟⎜⎟⎛⎞cos φi 2---, sin φi 2---, cos θi 2---,sin θi2---q i ′ = q i 1–p x φi ()q i = q i ′p z θi ()Table 1. Comparison of the number of operations for the two methodsMethod + or −×÷cos sin Rotation matrix 1527022Quaternion1526222Table 2. Comparison of the number of operations for the twomethods when applied to two proteins of different sizes (cos or sin operations were not counted here.)Method Kinase Keratin Rotation matrix 3039176931Quaternion40549103759,(22)the costs of the two methods then become 96 and 95 FLOPs,respectively (again assuming the cost of the tangent as 20operations).Using rotation matrices or quaternions for accumulating rotations for non-terminal atoms are therefore almost equivalent in terms of computational cost, but quaternions require more operations for terminal atoms. Overall, rotation matrix calculation is more efficient, the exact cost depending on the number of terminal atoms. Table 2 shows a com-parison of the number of FLOPs when the two methods are applied to two proteins, Abl tyrosine kinase and heparin-binding growth factor, following Ref. 1. The kinase has 62amino acids: MNDPNLFV ALYDFV ASGDNTLSITKGEK-LRVLGYNHNGEWCEAQTKNGQGWVPSNYITPVNS.Keratin has 154 amino acids: MAAGSITTLPALPEDGG-SGAFPPGHFKDPKRLYCKNGGFFLRIHPDGRVDGVR EKSDPHIKLQLQAEERGVVSIKGVSANRYLAMKEDG RLLASKSVTDECFFFERLESNNYNTYRSRKYTSWV A LKRTGQYKLGSKTGPGQKAILFLPMSAKS. According to Table 2, the rotation matrix method is about 25% more efficient, because of the differences in FLOPs required to invert terminal atoms.DiscussionAn algorithm with minimal rotation operations for inter-conversions between internal and Cartesian coordinate systems for a molecular chain is described, starting from a simple, straight reference state and applying rotations on the chain backwards. The rotation matrix formula is equivalent to that of Thompson.3 The number of algebraic operations is reduced compared to the methods described in Ref. 1 due to the use of a simpler reference. In Ref. 1, the cost is 70operations (+, −, ×, and ÷) for calculation of operator and 15 for placement of atom when rotation matrices are used,and 74 and 15, respectively, when quaternions are used. In the algorithms described here, the cost is 36 and 6 with rotation matrices, and 37 and 6 with quaternions. (All methods require equal numbers of sin/cos evaluations). The conclusion that the use of rotation matrices results in slightly more efficient computation than the use of quaternions is maintained. Efficient transformation of coordinate systems can facilitate studies on protein structure especially when local constraints are incorporated in natural manners.Acknowledgement. EAC and CS would like to acknow-ledge the hospitality of the Dill group at UCSF during their stay. CS acknowledges grants from the Seoul R&BD pro-gram, and a grant from MarineBio21, Ministry of Maritime Affairs and Fisheries, Korea.References1.Alvarado, C.; Kazerounian, K. Prot. Eng. 2003, 16, 717.2.Rappaport, D. C. The Art of Molecular Dynamics Simulation ;Cambridge Univ. Press: New York, 1995.3.Thompson, H. B. J. Chem. Phys. 1967, 47, 3407.4.Ko, H.; Shim, G .; Kim, Y . Bull. Korean Chem. Soc. 2005, 26, 2001.5.Choi, Y .; Lee, J.; Cho, K. W.; Hwang, S.; Jeong, K.; Jung, S. Bull.Korean Chem. Soc. 2005, 26, 1203.6.Coutsias, E. A.; Seok, C.; Dill, K. A. J. Comput. Chem . 2004, 25,1849.7.Jain, A.; V aidehi, N.; Rodriguesz, G . J. Comput. Phys. 1993, 106, 258. 8.Kneller, G .; Hinsen, K. Phys. Rev. E 1994, 50, 1559.9.Dullweber, A.; Leimkuhler, B.; McLachlan, R. J. Chem. Phys .1997, 107, 5840.10.Manocha, D.; Zhu, Y .; Wright, W. Comput. Appl. Biol. Sci. 1995,11, 71.11.Coutsias, E. A.; Seok, C.; Jacobson, M. P.; Dill, K. A. J. Comput.Chem . 2004, 25, 510.12.Coutsias, E. A.; Romero, L. The Quaternions with Applications toRigid Body Dynamics ; Sandia National Laboratories, Technical Report SAND2004-0153, 2004.cos θ = 1u 2–1u 2+--------------, sin θ = 2u 1u 2+--------------, where u = tan θ2--⎝⎠⎛⎞。

相关文档
最新文档