• saberalter > MAST建模讲义
  • MAST建模讲义

    免费下载 下载该文档 文档格式:DOC   更新时间:2007-04-02   下载次数:0   点击次数:1
    文档基本属性
    文档语言:Simplified Chinese
    文档格式:doc
    文档作者:jiangyu
    关键词:
    主题:
    备注:
    点击这里显示更多文档属性
    MAST建模讲义
    引言
    所谓仿真,就是描述一个实际系统的数学模型的特征,对仿真器而言,系统的模型无非就是一系列的代数或微分方程(组).MAST语言主要是用来创建模拟,数字或系统模型的,而用MAST语言建模实际上就是指定要被仿真的模型,它实际上就是要建立一系列的方程,因此用MAST语言建模的核心就是用线性(或非线性)的代数,微分方程(组)来描述对象的特征.它包括电,机械,光和流体等.
    从上面的定义可以看出,Saber仿真器并不是单纯的一个电路模型仿真器,从理论上讲如果你能用MAST语言建立任何建模,通过Saber仿真器就能进行仿真,但在实际情况是它讲受系统硬件的限制.仿真器实际上要作的工作就是解方程.
    既然Saber仿真器的主要工作就是解方程,那么可不可以将描述系统特征的数学方程用MATLAB来求解呢 因该说是可以的.但是有时建立一个系统的模型非常困难,特别是一些结构复杂的系统.用MAST建模时可以首先建立系统中元件的模型,然后将各个元件按照一定的要求连接起来就构成系统模型,因此在这种情况下描述系统模型方程由仿真器自动完成.
    正如上所述,只要能写出描述对象特征的方程就能用MAST语言建模,因此MAST语言不仅可以建立模拟元件的模型,还可以建立数字元件的模型,对于数字模型是用元件在各离散时刻的离散值来描述的.
    在MAST语言中,被Saber仿真器使用的最核心的单元就是模板(template),在创建模型中,模板是分层结构的.所谓分层结构就是在创建模板中可以引用其它模板.这样的结构有几个好处:
    在你创建模板的过程中可以直接调用Saber库中元件模型,这样将大大的减少你编写模板的工作量.
    对于你经常使用到的电路结构(该结构中可以包括其它电路结构),可以将其构成一个子系统,而其它模板可以调用这个子模板.
    可以建立一个顶层模板,在该模板中调用系统中的其它所有模板,它只反映各模板之间的连接及各模板所需要传递的参数.该模板通常叫网表.这样在仿真中修改参数就很方便.
    模板的命名.在这个问题上有两点需要注意,1,模板的扩展名必须是 .sin,即 templatename.sin.2,模板名必须以字母开头.
    如果是用SPICE语言写的模板,Saber仿真器也可以对它进行仿真,但之前必须把它转换为Saber格式,用spitos来转换.
    根据仿真对象的不同,所建模板的表现形式也不同,描述模板程序不同,构成模板的复杂程度不同,但作为模板它们都有一些共同的特征,首先它们都是由MAST语言写成的(Saber的模型可以由其它语言写,如VHDL,但那不是本课程的内容),其次是模板的结构具有相似性.与此相对应,在本部分内容中应注意MAST语言本身的特征以及模板的一些结构特征.
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    模板的结构
    一个模板可能有部分以下的一个或几个部分,也可能有以下的全部
    Units definitions
    Connection point definitions
    Template header
    Header declarations
    {
    local declarations
    Parameters sections
    When statements
    Values section
    Control section
    Equations section
    }
    在编写模板时,没有上面顺序的限制,可以按任意顺序编写,但有两点需特别注意,在使用一个量之前必须首先定义这个量,你定义的量的位置就决定了它是全局的或是局部的.如果你要在模板中引用文件,你可以在任何地方引用文件,关于文件的引用将在后面作简单介绍.但是为了增加程序的可读性,建议编写模板程序时采用上述顺序.另外,如果要调用程序,如果该文件为全局调用,建议调用句放在header declarations部分,如果该文件为局部调用,建议放在local declarations部分.
    你的模板可能只有以上的某些部分,至于那些部分是你需要的则是根据你模型的需要.例如,顶层模板就不包括模板头,头定义以及函数体{ }.下面将分别介绍在模板中各部分的情况.如下例:

    下一页

  • 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
  • 免费下载 DOC格式下载
  • 您可能感兴趣的
  • saberalter  alter黑saber  altersaber女仆  黑saberalter女仆  alter再版女仆saber  saber  saberlily  红saber  黑saber  saber壁纸