Maple中的evalf与evalhf

evalf

  • 可作用于单值
  • 可作用于List
  • 可作用于Set
  • 可作用于Vector(<..>)
  • 可作用于Matrix(<..|..|..>)

evalhf

  • 可作用于单值
  • 可作用于Vector(<..>)
  • 可作用于Matrix(<..|..|..>)
  • 不可作用于List
  • 不可作用于Set

Maple编程中的经常使用的參数限定



positive      正数

negative     负数

negzero     0或负0

poszero     0或正0

integer      整数

nonnegint  非负整数

nonposint  非正整数

negint       负整数

posint       正整数







Maple中的嵌套编程

Maple中也可嵌套编程。求一个阶乘吧。

f := proc (k::nonposint)

    if 0 < k then

        return f(k-1)*k;

    elif k = 0 then

        return 1;

    end if;

end proc;

就可以。







Maple学习: 函数的高速定义

函数与过程的定义通常是使用proc...end proc来定义,但在定义较为简单的函数时。Maple提供了更为便捷的方式。

比如:

  • 无參数

    定义过程:      f:=()->"这是一个无參数函数定义";

    调用过程:      f();
  • 单參数

    定义过程:      f:=(x)->x^2+x+1; 或 f:=x->x^2+x+1;

    调用过程:      f(2);
  • 多參数

    定义过程: f:=(x,y,z)->x^2+y+z;

    调用过程: f(1,2,3);

另外,"->"后面的表达式能够是if语句(在if语句中可嵌套其它的语句)。比如:

定义过程: f:=(x,y,z)->if x > 0 then x^2+y+z else x+y+z end if;

调用过程: f(1,2,3);

           或   s:=1,2,3;  f(s); # s为表达式序列

參数表中也可指定參数的类型。



Maple中查看某些系数函数的代码

Maple的大部分系统函数是用Maple语言编写的。仅仅有Maple内核的函数是用其它语言编译完毕的。我们能够使用Maple命令来查看系统函数的函数体,从而能够參考其编写方式,当然内核函数的函数体是看不到的。

首先执行: interface(verboseproc = 2);

再执行: print(sin);

则能够看到sin函数的代码.

另外假设是我们自己写的函数, 我们直接用print(函数名)来查看.



Maple其中的三种引號

  1. 双引號(double quote symbol, "): 表示字符串的定界符

    > str := "This is a string";

                           "This is a string"
  2. 右单引號(right single quotes, ' '):  表示非赋值表达式或是延迟表达式的求值

    > x := 2; y := 3;

    > f := x+y; g := 'x+y'; 'f'; f;

                                   5

                                 x + y

                                   f

                                   5

    > a := 1;

                                   1

    > ''a'';

                                  'a'

    > 'a';

                                   a

    > a;

                                   1

    > '2';

                                   2

    > dependent := 2;

    type(s, 'dependent({s, t})');

                                  true

    > type(s, dependent({s, t}));

                                 false

    > x := 5;

                                   5

    > x := 'x';

                                   x

    > x;

                                   x
  3. 左单引號(left single quote symbol , `)

    * 一对(` `)之间的字符串序列能够形成一个name

    * 对于一个合法的Maple的name, 加不加(` `)效果是一样的

    * 对于保留字, 加了(` `)之后能够成为name, 不加的话则不能够. 这在type里面用的挺多的

    > `This is a name!` := 1; # 加了(` `), 成为name

    > `This is a name!`;

                                   1

    > type(m+n, +); # +没有加引號, 当作运算符或保留字处理

    > type(m+n, `+`); # +加引號, 当作name处理

                                  true

    >a, `a`; # a是Maple中一个合法的name, 加不加引號效果一样

                                  1, 1











Maple重点知识总结的更多相关文章

  1. 【转载】STL"源码"剖析-重点知识总结

    原文:STL"源码"剖析-重点知识总结 STL是C++重要的组件之一,大学时看过<STL源码剖析>这本书,这几天复习了一下,总结出以下LZ认为比较重要的知识点,内容有点 ...

  2. JavaScript重点知识(二)

    三.JS的API 3.1知识点(DOM) 1)DOM本质 将html结构化成浏览器和JS可识别可操作的东西 2)变量计算---强制类型转换 获取DOM节点 Attribute(对html标签属性的修改 ...

  3. 【springmvc+mybatis项目实战】杰信商贸-6.重点知识回顾

    1.重点知识回顾 Maven1)覆盖仓库文件,实际企业开发,公司会架一个测试服务器,在测试服务器中架私服.我们开发人员的程序,都连接私服.当本地没有项目中要使用的jar,Myeclipse maven ...

  4. AJAX重点知识的心得体会

    下面就为大家带来一篇 AJAX重点知识的心得体会.学习还是有点帮助的,给大家做个参考吧. AJAX是什么? 是Asynchronous Javascript And XML的首字母的缩写, 它不是一门 ...

  5. AST抽象语法树——最基础的javascript重点知识,99%的人根本不了解

    AST抽象语法树——最基础的javascript重点知识,99%的人根本不了解 javascriptvue-clicommonjswebpackast  阅读约 27 分钟 抽象语法树(AST),是一 ...

  6. STL"源码"剖析-重点知识总结

    STL是C++重要的组件之一,大学时看过<STL源码剖析>这本书,这几天复习了一下,总结出以下LZ认为比较重要的知识点,内容有点略多 :) 1.STL概述 STL提供六大组件,彼此可以组合 ...

  7. STL&quot;源码&quot;剖析-重点知识总结

    STL是C++重要的组件之一,大学时看过<STL源码剖析>这本书,这几天复习了一下,总结出以下LZ认为比较重要的知识点,内容有点略多 :) 1.STL概述 STL提供六大组件,彼此可以组合 ...

  8. JavaScript重点知识(一)

    一.总括 基础知识: 1.变量 2.原型和原型链 3.作用域和闭包 4.异步和单线程 JS的API: 1.BOM,DOM操作 2.事件绑定 3.Ajax 4.JSOP 5.存储 二.基础知识 2.1知 ...

  9. 实践开发:vue框架重点知识分析

    一个VUE项目的主树: assets文件夹是放静态资源: components是放组件: router是定义路由相关的配置; view视图: app.vue是一个应用主组件: main.js是入口文件 ...

随机推荐

  1. Redis数据类型--List

    Redis列表是简单的字符串列表,依照插入顺序排序. 你能够加入一个元素到列表的头部(左边)或者尾部(右边) LPUSH 命令插入一个新的元素到头部, RPUSH插入一个新元素到尾部. 当一个这两个操 ...

  2. vue - 子路由-路由嵌套

    描述:子路由,也叫路由嵌套,采用在children后跟路由数组来实现,数组里和其他配置路由基本相同,需要配置path和component,然后在相应部分添加<router-view/>来展 ...

  3. PHP 5 时区

    PHP 5 时区 PHP 支持的时区 下面是 PHP 支持的时区的完整列表,这些对一些 PHP 日期函数很有用. 非洲 美洲 南极洲 北冰洋 亚洲 大西洋 大洋洲 欧洲 印度洋 太平洋 非洲 Afri ...

  4. The application is in break mode

    在安装使用Visual Studio 2017后,当代码出现异常的时候,它没有调到代码出错的地方,显示了下图.. 解决办法:打开 Debug——>Options——>,勾上 Use Man ...

  5. linux&amp;shell

    Linux经常使用命令 登录时显示信息放在/etc/motd和/etc/profile.d/xxx.sh motd放置字符串 profile.d下放置脚本文件 echo echo -e 处理特殊字符. ...

  6. Python类,特殊方法, __getitem__,__len__, __delitem__

    特殊函数一般以__methodname__的形式命名,如:__init__(构造方法), __getitem__. __setitem__(subscriptable所需method), __deli ...

  7. android基础-Apk打包过程(了解)

    此文来源于<Android软件安全与逆向分析> 一.打包资料文件,生成R.java文件. 二.处理aidl文件,生成相应的Java文件. 三.编译工程源代码,生成相应的class文件. 四 ...

  8. chrome 此网页正试图从未经验证的来源加载脚本

      chrome 此网页正试图从未经验证的来源加载脚本 CreateTime--2018年5月25日08点02分 Author:Marydon 1.情景还原 以我的网站为例,https://www.c ...

  9. 【Linux】touch命令

    用途 touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间. 全称 touch全称即为touch 参数 -a   :或--time=atime或--time=access或--time ...

  10. 用Html写一个简单的登陆界面

    <!DOCTYPE html> <html> <title>登陆页面</title> <head> <meta charset=&qu ...