当前位置: 首页 > news >正文

MATLAB:一些杂例

a = 2; b = 5;
x = 0:pi/40:pi/2; %增量为pi/40
y = b*exp(-a*x).*sin(b*x).*(0.012*x.^4-0.15*x.^3+0.075*x.^2+2.5*x); %点乘的意义
z = y.^2; %点乘的意义
w(:,1) = x; %组成w,第一列为x
w(:,2) = y; %组成w,第二列为y
w(:,3) = z; %组成w,第三列为z
format short g; %短格式显示
w %不加分号,显示数据
%绘图显示,注意各种符号的属性设置
plot(x,y,'--rp','LineWidth',1.5,'MarkerSize',15,'MarkerEdgeColor','r','MarkerFaceColor','w');
hold on
plot(x,z,'b-s','MarkerEdgeColor','b','MarkerFaceColor','g');
legend('y关于x曲线','z关于y的曲线');

clc,clear;
q0 = 10; R = 60; C = 0.00005; t = linspace(0,0.8,100);
styleline = {'r-','b--','m:','c-.'};
leg = {};
i = 1; Qtl(1,:) = t;
for L = 3:3:12qt = q0*exp(-R*t/2/L).*cos(sqrt(1/L/C-(R/2/L)^2).*t);Qtl(i+1,:) = qt;plot(Qtl(1,:),Qtl(i+1,:),styleline{i});plot(t,qt,styleline{i},'LineWidth',2);leg{i} = strcat('L = ', num2str(L));i = i + 1;hold on
end
title('电量随时间的变化曲线'); 
legend(leg,'location','best'); 
xlabel('t(s)'); 
ylabel('q(t)'); 
grid on

%按要求处理第(1)步
x=0:pi/100:3*pi;
y=sin(x);
y1=(y>=0).*y; %消去负半波
p=sin(pi/3);
%按要求处理第(2)步
y2=(y>=p)*p+(y<p).*y1; 
plot(x,y,'r-','LineWidth',2)
hold on; 
grid on
plot(x,y2,'b-','LineWidth',2)

例4:元胞数组示例

x = 0:pi/100:2*pi; %x从[0, 2pi]之间等分100份
y(1,:) = x.*sin(x); %第一个函数,且计算值
y(2,:) = x.^2-4*x-4;
y(3,:) = x.*cos(x);
y(4,:) = x.*log(x);
colors = {'r','b','g','m'}; %颜色元胞数组
linestype = {'-','--',':','-.'}; %线形元胞数组
led = {'x.*sin(x)','x.^2-4*x-4','x.*cos(x)','x.*log(x)'}; %图例元胞数组
for i = 1:4 %循环绘制4条曲线plot(x,y(i,:),strcat(colors{i},linestype{i}),'LineWidth',2);hold on
end
legend(led,'Location','best') %添加图例
grid on; 
hold off

例5. 方向余弦矩阵(DCM, Direction Consine Matrix)

例6. 计算平行六面体的体积

例7. 用Cramer法则求解线性方程组

clc, clear
D = [2, 2, -1, 1; 4, 3, -1, 2; 8, 5, -3, 4; 3, 3, -2, 2];
b = [4; 6; 12; 6];
D1 = [b, D(:, 2:4)];
D2 = [D(:, 1:1), b, D(:, 3:4)];
D3 = [D(:, 1:2), b, D(:, 4:4)];
D4 = [D(:, 1:3), b];
DD = det(D);
x1 = det(D1) / DD;
x2 = det(D2) / DD;
x3 = det(D3) / DD;
x4 = det(D4) / DD;
X = [x1, x2, x3, x4]
% X = [1, 1, -1, -1]Cramer(D, b)
function Cramer(A, b)
%% 1、输入参数的判断if nargin == 0 || nargin == 1disp('您输入的参数个数不足!');returnend
%% 2、判断是否为方阵[rs, cs] = size(A);if rs ~= csdisp('系数矩阵必须是方阵,否则无法用Cramer法则求解!');returnend
%% 3、求解判断系数矩阵行列式的值D = det(A);if D == 0disp('系数矩阵行列式等于0!');returnend
%% 4、用Cramer法则求解和输出disp('线性方程组的解为:');for i = 1:rsAX = [A(:, 1:i-1), b, A(:, i+1:cs)];x = det(AX) / D;fprintf('x%d = %.6f\n', i, x)end
end

例8. 矩阵分解

clc, clear
%% 对称正定矩阵的三角分解——Cholesky分解
A = gallery('lehmer', 5)  % 生成正定矩阵
L = chol(A)
L'*L
% A = L' * L
norm(A - L' * L, 'fro')%% 实对称矩阵的QDQ分解
B = gallery('fiedler', 5)  % 生成对称矩阵
[V, D] = eig(B)
V*D*V'
norm(V*D*V' - B, 'fro')%% LU分解
%[𝑳, 𝑼, 𝑷] = 𝒍𝒖(𝑨): 𝑷𝑨 = 𝑳𝑼
[L, U, P] = lu(A)A = [2 5 4 1;1 3 2 1;2 10 9 7;3 8 9 2];
b = [20 11 40 37]';
[L, U, P] = lu(A)
Y = inv(L)*P*b
X = inv(U)*Y
X1 = A\b%% QR分解
A = magic(5)
[Q, R] = qr(A)
Q*R%% 奇异值分解
A = round(5*randn(5, 4))
s = svd(A)  % s = svd(A) 以降序顺序返回矩阵 A 的奇异值。
[U, S, V] = svd(A)B = A'*A;
D = eig(B);
sqrt(D)

例9. 线性方程组求解

function [x, y] = leqsolve(A, b)
%% 求解线性方程组的解,
% 输入参数:A系数矩阵,b是右端向量,
% 输出参数:x是唯一解或特解,y是基础解系if nargin < 2disp('请您输入系数矩阵A和右端向量b!')returnendy = [];  % 基础解系[m, n] = size(A);  % 系数矩阵维度的长度if norm(b) > 0  % 非齐次方程if rank(A) == rank([A, b])  % 方程组相容,有解if rank(A) == n  % 唯一解disp('方程组有唯一解:')x = A\b;else  % 方程有无穷多个解,基础解系disp('方程组有无穷多个解,其齐次方程组的基础解系是y,特解是x:')x = A\b;  % 特解y = null(A, 'r');  % 基础解系endelse  % 方程组不相容,给出最小二乘解disp('方程组最小二乘解是:')x = A\b;endelse  % 齐次方程if rank(A) >= n  % 列满秩x = zeros(n, 1);  % 零解else  % 非零解disp('方程组有无穷多个解,基础解系x是:')x = null(A, 'r');endend 
end

相关文章:

MATLAB:一些杂例

a 2; b 5; x 0:pi/40:pi/2; %增量为pi/40 y b*exp(-a*x).*sin(b*x).*(0.012*x.^4-0.15*x.^30.075*x.^22.5*x); %点乘的意义 z y.^2; %点乘的意义 w(:,1) x; %组成w&#xff0c;第一列为x w(:,2) y; %组成w&#xff0c;第二列为y w(:,3) z; %组成w&#xff0c;第三列为z…...

使用OpenCV实现两张图像融合在一起

简单介绍 图像融合技术是一种结合多个不同来源或不同传感器捕获的同一场景的图像数据&#xff0c;以生成一幅更全面、更高质量的单一图像的过程。这种技术广泛应用于遥感、医学影像分析、计算机视觉等多个领域。常见的图像融合技术包括基于像素级、特征级和决策级的融合方法&a…...

PyTorch学习笔记之基础函数篇(十)

文章目录 6 张量操作6.1 torch.reshape()函数6.1 torch.transpose()函数6.1 torch.permute()函数6.1 torch.unsqueez()函数6.1 torch.squeeze()函数6.1 torch.cat()函数6.1 torch.stack()函数 6 张量操作 6.1 torch.reshape()函数 torch.reshape() 是 PyTorch 中的一个函数&a…...

kubernetes部署集群

kubernetes部署集群 集群部署获取镜像安装docker[集群]阿里仓库下载[集群]集群部署[集群]集群环境配置[集群]关闭系统Swap[集群]安装Kubeadm包[集群]配置启动kubelet[集群]配置master节点[master]配置使用网络插件[master]node加入集群[node]后续检查[master]测试集群 集群部署…...

软件工程师,该偿还一下技术债了

概述 在软件开发领域&#xff0c;有一个特殊的概念——“技术债”&#xff0c;它源于Ward Cunningham的一个比喻&#xff0c;主要用来描述那些为了短期利益而选择的快捷方式、临时解决方案或者未完成的工作&#xff0c;它们会在未来产生额外的技术成本。就像金融债务一样&#…...

HTML5、CSS3面试题(三)

HTML5、CSS3面试题&#xff08;二&#xff09; rem 适配方法如何计算 HTML 跟字号及适配方案&#xff1f;&#xff08;必会&#xff09; 通用方案 1、设置根 font-size&#xff1a;625%&#xff08;或其它自定的值&#xff0c;但换算规则 1rem 不能小于 12px&#xff09; 2…...

pytorch之诗词生成6--eval

先上代码&#xff1a; import tensorflow as tf from dataset import tokenizer import settings import utils# 加载训练好的模型 model tf.keras.models.load_model(r"E:\best_model.h5") # 随机生成一首诗 print(utils.generate_random_poetry(tokenizer, model)…...

Django自定义中间件

自定义中间件 传统方法的的五大钩子函数&#xff1a;&#xff08;需要调用MiddlewareMixin类&#xff09; process_request&#xff0c;请求刚到来&#xff0c;执行视图之前&#xff1b;正序 process_view&#xff0c;路由转发到视图&#xff0c;执行视图之前&#xff1b;正序…...

【JavaScript】JavaScript 运算符 ① ( 运算符分类 | 算术运算符 | 浮点数 的 算术运算 精度问题 )

文章目录 一、JavaScript 运算符1、运算符分类2、算术运算符3、浮点数 的 算术运算 精度问题 一、JavaScript 运算符 1、运算符分类 在 JavaScript 中 , 运算符 又称为 " 操作符 " , 可以实现 赋值 , 比较 > < , 算术运算 -*/ 等功能 , 运算符功能主要分为以下…...

掘根宝典之C++迭代器简介

简介 迭代器是一种用于遍历容器元素的对象。它提供了一种统一的访问方式&#xff0c;使程序员可以对容器中的元素进行逐个访问和操作&#xff0c;而不需要了解容器的内部实现细节。 C标准库里每个容器都定义了迭代器 迭代器的作用类似于指针&#xff0c;可以指向容器中的某个…...

DP-力扣 120.三角形最小路径和

给定一个三角形&#xff0c;找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。相邻的结点&#xff1a; 下标与上一层结点下标相同或者等于上一层结点下标 1 的两个结点。样例&#xff1a; 例如&#xff0c;给定三角形&#xff1a; [ [2], [3,4], [6,5,7], [4…...

【WEEK3】学习目标及总结【SpringMVC】【中文版】

学习目标&#xff1a; 三周完成SpringMVC入门——第三周 感觉这周很难完成任务了&#xff0c;大概率还会有第四周 学习内容&#xff1a; 参考视频教程【狂神说Java】SpringMVC最新教程IDEA版通俗易懂数据处理JSON交互处理 学习时间及产出&#xff1a; 第三周 MON~FRI 2024.…...

peft模型微调--Prompt Tuning

模型微调&#xff08;Model Fine-Tuning&#xff09;是指在预训练模型的基础上&#xff0c;针对特定任务进行进一步的训练以优化模型性能的过程。预训练模型通常是在大规模数据集上通过无监督或自监督学习方法预先训练好的&#xff0c;具有捕捉语言或数据特征的强大能力。 PEF…...

【算法训练营】周测1

清华大学驭风计划课程链接 学堂在线 - 精品在线课程学习平台 (xuetangx.com) 如果需要答案代码可以私聊博主 有任何疑问或者问题&#xff0c;也欢迎私信博主&#xff0c;大家可以相互讨论交流哟~~ 考题11-1 题目描述 有一个初始时为空的序列&#xff0c;你的任务是维护这个…...

PyTorch Dataset、DataLoader长度

pytorch 可以直接对 Dataset 对象用 len() 求数据集大小&#xff0c;而 DataLoader 对象也可以用 len()&#xff0c;不过求得的是用这个 loader 在一个 epoch 能有几多 iteration&#xff0c;容易混淆。本文记录几种情况的对比。 from torch.utils.data import Dataset, DataL…...

动态IP和静态IP

与静态 IP 地址不同&#xff0c;动态 IP 地址会定期更改。让我们来分析一下&#xff1a; 1. IP 地址基础知识&#xff1a; * IP 地址是一个数字标签&#xff0c;用于唯一标识网络上的每个设备。 * 当设备通过网络通信时&#xff0c;数据会在它们之间来回传输。每个数据包都标有…...

中电金信:技术实践|Flink维度表关联方案解析

导语&#xff1a;Flink是一个对有界和无界数据流进行状态计算的分布式处理引擎和框架&#xff0c;主要用来处理流式数据。它既可以处理有界的批量数据集&#xff0c;也可以处理无界的实时流数据&#xff0c;为批处理和流处理提供了统一编程模型。 维度表可以看作是用户来分析数…...

HQL 55 题【持续更新】

前言 今天开始为期一个多月的 HQL 练习&#xff0c;共 55 道 HQL 题&#xff0c;大概每天两道&#xff0c;从初级函数到中级函数。这次的练习不再是基础的 join 那种通用 SQL 语法了&#xff0c;而是引入了更多 Hive 的函数&#xff08;单行函数、窗口函数等&#xff09;。 我…...

lqb省赛日志[8/37]-[搜索·DFS·BFS]

一只小蒟蒻备考蓝桥杯的日志 文章目录 笔记DFS记忆化搜索 刷题心得小结 笔记 DFS 参考 深度优先搜索(DFS) 总结(算法剪枝优化总结) DFS的模板框架: function dfs(当前状态){if(当前状态 目的状态){}for(寻找新状态){if(状态合法){vis[访问该点]&#xff1b;dfs(新状态);?…...

uni app 钓鱼小游戏

最近姑娘喜欢玩那个餐厅游戏里的钓鱼 &#xff0c;经常让看广告&#xff0c;然后就点点点... 自己写个吧。小鱼的图片自己搞。 有问题自己改&#xff0c;不要私信我 <template><view class"page_main"><view class"top_linear"><v…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…...

Android Wi-Fi 连接失败日志分析

1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分&#xff1a; 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析&#xff1a; CTR…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

selenium学习实战【Python爬虫】

selenium学习实战【Python爬虫】 文章目录 selenium学习实战【Python爬虫】一、声明二、学习目标三、安装依赖3.1 安装selenium库3.2 安装浏览器驱动3.2.1 查看Edge版本3.2.2 驱动安装 四、代码讲解4.1 配置浏览器4.2 加载更多4.3 寻找内容4.4 完整代码 五、报告文件爬取5.1 提…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

Device Mapper 机制

Device Mapper 机制详解 Device Mapper&#xff08;简称 DM&#xff09;是 Linux 内核中的一套通用块设备映射框架&#xff0c;为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程&#xff0c;并配以详细的…...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;社区养老保险系统小程序被用户普遍使用&#xff0c;为方…...

redis和redission的区别

Redis 和 Redisson 是两个密切相关但又本质不同的技术&#xff0c;它们扮演着完全不同的角色&#xff1a; Redis: 内存数据库/数据结构存储 本质&#xff1a; 它是一个开源的、高性能的、基于内存的 键值存储数据库。它也可以将数据持久化到磁盘。 核心功能&#xff1a; 提供丰…...