首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >matlab不允许正弦(0)

matlab不允许正弦(0)
EN

Stack Overflow用户
提问于 2014-03-31 11:10:19
回答 2查看 1.3K关注 0票数 2

我试着在同一幅图上绘制这两个图,但是matlab返回的误差‘不能除以零’,并建议我使用0的sinc。

我不知道怎么做bc sinc(0)=1,我不明白这个问题。

我的代码:

代码语言:javascript
运行
AI代码解释
复制
syms x  
ezplot(heaviside(x+1) - heaviside(x-1), [-2, 2])  
hold  
t=-2:0.1:2;  
syms k  
r=symsum( ((sinc(k/2)/2)*exp((1i)*k*pi*(t/2))), -1,1);  
plot(t,r)  

问题:

代码语言:javascript
运行
AI代码解释
复制
  ??? Error: File: aa.m Line: 6 Column: 18
Unexpected MATLAB expression.

Current plot held
??? Error using ==> mupadmex
Error in MuPAD command: Division by zero [_power];

during evaluation of 'sum::sum'

Error in ==> sym.symsum at 74
   r = mupadmex('symobj::map',f.s,'symobj::symsum',x.s,a.s,b.s);

Error in ==> aa at 6
r=symsum( ((sinc(k/2)/2)*exp((1i)*k*pi*(t/2))), -1,1);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-01 14:19:19

另一种解决方案,不是使用带有伽马函数的替代定义,而是添加了一个校正来重新定义x=0点。

原来的函数有0/0的情况,我用更正(0)=1的校正函数重新定义它,否则使用更正(1)=0。这将在sinc(0)中变为1/1。

代码语言:javascript
运行
AI代码解释
复制
%correction(0)=1, correction(x)=0 otherwise. A little bit idiotic, but I'm unable to define this in a simpler way which is compartible to the symbolic toolbox:
correction=@(x)(((heaviside(x)-.5).^2)-.25)*-4
%redefine sinc using the original function, but use correction(x) to fix sinc(0)
ssinc=@(x)((sin(pi*x)+correction(x))./((pi*x)+correction(x)))

syms x  
ezplot(heaviside(x+1) - heaviside(x-1), [-2, 2])  
hold  
t=-2:0.1:2;  
syms k  
r=symsum( ((ssinc(k/2)/2)*exp((1i)*k*pi*(t/2))), -1,1);  
plot(t,r)
票数 0
EN

Stack Overflow用户

发布于 2014-03-31 12:50:40

对sinc使用此替代定义:

代码语言:javascript
运行
AI代码解释
复制
ssinc=@(X)(1./(gamma(1+X).*gamma(1-X)))

syms x  
ezplot(heaviside(x+1) - heaviside(x-1), [-2, 2])  
hold  
t=-2:0.1:2;  
syms k  
r=symsum( ((ssinc(k/2)/2)*exp((1i)*k*pi*(t/2))), -1,1);  
plot(t,r) 

此代码使用sinc函数的替代定义:

(资料来源:维基百科)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22770120

复制
相关文章
Matlab正弦波信号以及随机噪声信号。
1、点击[新建] 2、点击[函数] 3、点击[编辑器] 4、点击[命令行窗口] 5、按<Enter>键
裴来凡
2022/05/28
7400
Matlab正弦波信号以及随机噪声信号。
正弦函数仿真
使用matlab产生一个sin函数值,然后存放在rom中 t=[0:0.1:90]; x=pi*t/180; sin_vale=sin(x); fid=fopen('sin.mif','wt'); fprintf(fid,'width=14;\n'); fprintf(fid,'depth=1024;\n'); fprintf(fid,'address_radix=uns;\n'); fprintf(fid,'data_radix=dec;\n'); fprintf(fid,'content begin\n
瓜大三哥
2018/02/26
8390
正弦函数仿真
正弦和余弦
题目: 输入正整数n (n<360), 输入 n度的正弦、余弦函数值。提示:使用数学函数 c语言实现 #include<stdio.h> #include<math.h> int main() { int n; double pi = acos(-1.0); scanf("%d",&n); printf("%f %f \n",sin(n/180.0*pi),cos(n/180.0*pi)); return 0; }
Vincent-yuan
2020/05/19
4510
【MATLAB】进阶绘图 ( Stairs 阶梯图 | stairs 函数 | Stem 离散序列数据图 | stem 函数 | 正弦函数采样 )
stairs 函数文档 : https://ww2.mathworks.cn/help/matlab/ref/stairs.html
韩曙亮
2023/03/29
1.6K0
【MATLAB】进阶绘图 ( Stairs 阶梯图 | stairs 函数 | Stem 离散序列数据图 | stem 函数 | 正弦函数采样 )
使用LSTM预测正弦曲线
之前介绍过用LSTM预测天气的例子,该例子中数据集的处理和曲线绘制函数稍微有点复杂。这篇我们使用标准正弦函数做数据集,让代码更简单,来加深我们对LSTM的理解。
用户6021899
2020/02/19
2.2K0
振动耐久试验——半正弦冲击
“振动耐久试验,是在振动台上进行的长时间振动试验。本文将用较少的篇幅介绍振动耐久试验中的半正弦冲击。”
用户7573907
2020/07/21
8.4K0
振动耐久试验——半正弦冲击
[PaddleFluid小试牛刀]练习二·DNN正弦函数拟合
[PaddleFluid小试牛刀]练习二·DNN正弦函数拟合 在上篇博文基础上做了些改进,拟合正弦曲线 生成数据 code from paddle import fluid as fl import numpy as np import matplotlib.pyplot as plt def get_data(x): c,r = x.shape y = np.sin(x*3.14)+1+ (0.02*(2*np.random.rand(c,r)-1)) return(y) xs
小宋是呢
2019/06/27
1.2K0
[PaddleFluid小试牛刀]练习二·DNN正弦函数拟合
matlab与FPGA数字滤波器设计(4)—— Vivado DDS 与 FIR IP核设计 FIR 数字滤波器系统
本讲使用两个 DDS 产生待滤波的信号和matlab产生带滤波信号,结合 FIR 滤波器搭建一个信号产生及滤波的系统,并编写 testbench 进行仿真分析,第五讲、第六讲开始编写 verilog 代码设计FIR滤波器,不再调用IP核。
FPGA探索者
2021/03/15
2.2K0
MATLAB fmincon 的初值x0的选取问题[通俗易懂]
大家好,又见面了,我是你们的朋友全栈君。 问题描述:在使用fmincon求解局部(全局)最优值时,我们需要在fmincon函数中输入初值x0,那么这个初值是否要像原始的牛顿法一样初值必须在可行域内(
全栈程序员站长
2022/09/05
1.9K0
正弦,余弦,正切,余切,正割,余割_三角函数的正弦余弦是什么意思
1. 三角函数的基本概念 2. rigonometric-functions 3. 杨超考研数学导学
全栈程序员站长
2022/11/01
3.8K0
正弦,余弦,正切,余切,正割,余割_三角函数的正弦余弦是什么意思
振动耐久试验——正弦扫频
“振动耐久试验,是在振动台上进行的长时间振动试验。本文及之后的几篇文章将详细介绍振动耐久试验的几种常用试验类型。”
用户7573907
2020/07/20
9.4K0
用matlab产生时域离散信号实验报告(有关数字信号处理)
离散正弦序列的MATLAB表示与连续信号类似,只不过是用stem函数而不是用plot函数来画出序列的波形。下面就是正弦序列的MATLAB源程序。
全栈程序员站长
2022/07/25
1.4K0
MATLAB的图像显示方法
在 MATLAB 中, 序列是用矩阵向量表示, 但它没有包含采样信息, 即序列位置信息, 为 此, 要表示一个序列需要建立两个向量; 一是时间序列 n , 或称位置序列, 另一个为取值序 列 x ,表示如下:
timerring
2023/03/04
4.8K0
MATLAB的图像显示方法
振动耐久试验——正弦叠加随机
“振动耐久试验,是在振动台上进行的长时间振动试验。本文将详细介绍振动耐久试验中的正弦叠加随机。结合前两篇文章介绍的正弦扫频和宽频随机,本篇仍分别从时域和频域的角度来讲解正弦叠加随机,以方便理解”
用户7573907
2020/07/20
3.8K0
DSP数字信号处理实验一 常见离散信号的产生
一、实验目的         1. 加深对离散信号的理解。         2. 掌握典型离散信号的Matlab 产生和显示。 二、实验原理及方法         在MATLAB 中,序列是用矩阵向量表示,但它没有包含采样信息,即序列位置信息,为 此,要表示一个序列需要建立两个向量;一是时间序列n,或称位置序列,另一个为取值序 列x,表示如下:n=[…,-3,-2,-1,0,1,2,3,…],x=[…,6,3,5,2,1,7,9,…]         一般程序都从0 位置起始,则x= [x(0), x(1), x(2),…]对于多维信号需要建立矩阵 来表示,矩阵的每个列向量代表一维信号。         数字信号处理中常用的信号有指数信号、正弦信号、余弦信号、方波信号、锯齿波信号 等,在MATLAB 语言中分别由exp, sin, cos, square, sawtooth 等函数来实现。 三、实验内容 1. 用MATLAB 编制程序,分别产生长度为N(由输入确定)的序列:         ①单位冲击响应序列:δ(n)可用MATLAB 中zeros 函数来实现;         ②单位阶跃序列:U(n)可用MATLAB 中ones 函数来实现;         ③正弦序列:x(n) = sin(ωn)         ④指数序列:x(n) = aⁿ , −∞ < n < +∞         ⑤复指数序列:用 exp 函数实现,并给出该复指数序列的实部、虚部、幅值和相位的图形。(其中 a=-0.2;b=0.5;K0=4;N=40.) 参考流程图:
timerring
2022/07/20
5720
DSP数字信号处理实验一 常见离散信号的产生
【DSP教程】第36章 FIR滤波器的Matlab设计(含低通,高通,带通和带阻)
完整版教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=94547 第36章 FIR滤波器的Matlab设计(含低通,高通,
Simon223
2021/07/19
3.9K0
【DSP教程】第36章       FIR滤波器的Matlab设计(含低通,高通,带通和带阻)
C# 基础 实现 正弦sin、反正弦arcsin,正切tan、反正切arctan:求角度值
#region 三角函数和反三角函数 using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Messaging; using System.Net.Sockets; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml.Linq; names
用户9127601
2021/11/01
1.8K0
基于matlab FPGA verilog的FIR滤波器设计
大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。
FPGA技术江湖
2020/12/29
1.2K0
基于matlab FPGA verilog的FIR滤波器设计
matlab怎么定义矩阵变量_MATLAB01:基本的数学运算与矩阵运算
MATLAB基本语法变量变量名保留变量不适合做变量名变量不应当覆盖内置函数变量类型数字型变量的显示格式MATLAB命令行使用MATLAB进行数字运算使用MATLAB计算数学表达式MATLAB内置的数学函数使用MATLAB进行矩阵运算定义矩阵向终端输入矩阵使用冒号运算符创建向量定义特殊矩阵矩阵的索引矩阵的操作操作矩阵的运算符操作矩阵的函数
全栈程序员站长
2022/07/22
2.1K0
matlab怎么定义矩阵变量_MATLAB01:基本的数学运算与矩阵运算
点击加载更多

相似问题

MATLAB正弦问题

11

Matlab正弦波绘图

26

半正弦脉冲成形- Matlab

13

MATLAB用+/-分解正弦函数

11

变幅正弦波matlab

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文