爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 5182|回复: 4

[程序设计] 这个函数怎么实现呢?

[复制链接]

新浪微博达人勋

发表于 2015-1-24 20:32:38 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
function y = C1( gama )
%C1 此处显示有关此函数的摘要
%   此处显示详细说明
syms k;
f1 = @(k)dfac(2*k-3)/(factorial(k)*factorial(k+1)) * power(gama/2,k);
y = 3*sqrt(pi)/4 * (1 - gama/4 - symsum(f1,k,1,inf));
end

function y = dfac( x )
%DFAC 双阶乘
%   此处显示详细说明
y = 1;
if x > 0
    for i = x:-2:1
        y = y * i;
    end
end
if x == 0
    y = 1;
end
if x < 0
    x = abs(x);
    for i = x:-2:1
        y = y * i;
    end
    y = 1 / y;
end

//---------------------------------命令行窗口-------------------------------------------//
y = C1(2)无法从 sym 转换为 logical。
出错 dfac (line 5)if x > 0
出错 C1 (line 5)f1 = dfac(2*k-3)/(factorial(k)*factorial(k+1)) * power(gama/2,k)


12.jpg
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 成长值: 32430
发表于 2015-1-24 20:51:38 | 显示全部楼层
把表达式从符号表达式换成普通表达式试试,这里是函数传递的时候类型出错了……
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-1-24 21:02:07 | 显示全部楼层
二爷名声在外 发表于 2015-1-24 20:51
把表达式从符号表达式换成普通表达式试试,这里是函数传递的时候类型出错了……

去掉@(k)吗?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 成长值: 32430
发表于 2015-1-24 21:08:35 | 显示全部楼层
如果这样,定义符号那一句也应该去掉
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-1-24 21:16:47 | 显示全部楼层
本帖最后由 MiniTime 于 2015-1-24 21:29 编辑
二爷名声在外 发表于 2015-1-24 21:08
如果这样,定义符号那一句也应该去掉
应该是dfac的问题,提示:无法从 sym 转换为 logica
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表