基于matlab实现的船舶横摇运动仿真程序

news2024/11/25 14:27:38

完整程序:

clc
clear
syms w we;
w=0.4:0.05:1.6;mu=90;v=6;%kb=1;kt=1;%航速6m/s,航向90度,即横浪,cos(90)=0
T=3;B=10;Sw=0.785;%船宽10米,吃水3米,水线面系数假设为0.785
we=w+w.^2.*v/9.8;
for i=1:24
    delta_we(i)=we(i+1)-we(i);
end
delta_we(25)=delta_we(24);
z=0.194375;
s_kesi=0.778./(w.^5).*exp(-z./(w.^4)); %含风速=15m/s即三一波高=4m在内了 %2.47./(w.^6).*exp(-2.*9.8.^2./24.5.^2./(w.^2));
s_alpha=w.^4.*s_kesi./(9.8^2);%波倾角谱
%以下进行波倾角修正
%按照船宽和吃水定kb,kt,进而求s_alpha_v;
kb=exp(-w.^2.*T./(6.24*pi));
kt=1-sqrt(Sw).*B.^2.*w.^4./(1.56^2*16*pi^4);
s_kesi_v=0.778./(w.^5).*exp(-0.194375./(w.^4))./(1+2.*w./9.8.*v.*cos(mu*pi/180));
s_alpha_v=w.^4.*s_kesi_v./(9.8^2).*kb.^2.*kt.^2;

%figure;hold on;set(gca,'XLim',[0.2,2]);
%plot(w,s_kesi,'r',w,s_alpha,'g--');
s_alpha_ap=sqrt(2.*s_alpha_v.*0.05);%波倾角幅值
s_alpha_v_ap=sqrt(2.*s_alpha_v.*delta_we);
%产生0~2*pi之间均匀分布的随机变量epsilon
y=zeros(25,1);y(1)=1977326743;b=7;M=10^10;
for i=1:25
    y(i+1)=mod(7*y(i),M);
    x(i)=y(i)/M;
end
epsilon=2*pi*x;

alpha=0;alpha_v=0;
t=0:0.1:30*pi;
for i=1:25
    a=s_alpha_ap(i).*sin(w(i)*t+epsilon(i));
    alpha=alpha+a;
    aa=s_alpha_v_ap(i).*sin(we(i)*t+epsilon(i));
    alpha_v=alpha_v+aa;
end

miu_roll=0.1614;%横摇阻尼,可以变化,0~2;
omg_roll=0.8;%横摇固有频率给定?根据船型计算?
A=we./omg_roll;%遭遇频率和固有频率之比
W_roll_2=1./((1-A.^2).^2+4.*(miu_roll^2).*(A.^2));%幅频响应函数
s_roll=W_roll_2.*s_alpha_v;%横摇角能谱,用s_alpha_v代替s_alpha
%plot(w,s_roll)

s_roll_ap=s_alpha_v_ap.*sqrt(W_roll_2);
epsilon_roll=atan(2.*miu_roll.*A./(1-A.^2));
hyj=0;
for i=1:25
    r=s_roll_ap(i).*sin(we(i)*t-epsilon_roll(i));
    hyj=hyj+r;
end

hold on;
figure(1),plot(t,10.*alpha,'r',t,10*alpha_v,'b');xlabel('t (s)');ylabel('\alpha');  %绘制波倾角时域图
legend('波倾角','有效波倾角');
%plot(t,20.*alpha_v);xlabel('t (s)');ylabel('\alpha_v');
figure(2),plot(t,10.*hyj);xlabel('t (s)');ylabel('横摇角');   %绘制横摇角时域图

%subplot(3,1,3);
%plot(t,20.*hyj);xlabel('t (s)');ylabel('横摇角');   %绘制横摇角时域图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1021442.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【计算机网络】——数据链路层(应用:局域网、广域网、设备 )

//仅做个人复习和技术交流,图片取自王道考研,侵删 一、大纲 1、介质访问控制 信道划分介质访问控制 随机访问介质访问控制 2、局域网 3、广域网 4、数据链路层设备 二、局域网 1、局域网基本概念和体系结构 局域网(LocalArea Network): 简称LAN&…

Stable Diffusion - 采样器 DPM++ 3M SDE Karras 与 SDXL Refiner 测试

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/132978866 Paper: DPM-Solver: Fast Solver for Guided Sampling of Diffusion Probabilistic Models 扩散概率模型(DPMs)…

基于matlab实现的多普勒脉冲雷达回波仿真

完整程序: clear all;clc;close all; fc3e9; %载波频率 PRF2000; Br5e6; %带宽 fs10*Br; %采样频率 Tp5e-6; %脉宽 KrBr/Tp; %频率变化率 c3e8; %光速 lamda…

linux入门---共享内存

目录标题 共享内存的原理共享内存的理解shmget函数key和shmid的区别ipcs -m和shmctlshmatshmdt共享内存的通信共享内存的优点共享内存的缺点共享内存的特点 共享内存的原理 通过前面的内容我们知道不同的进程通过虚拟地址空间和页表能够将自己的数据映射到内存上的不同地方比如…

2023全新TwoNav开源网址导航系统源码 | 去授权版

2023全新TwoNav开源网址导航系统源码 已过授权 所有功能可用 测试环境:NginxPHP7.4MySQL5.6 一款开源的书签导航管理程序,界面简洁,安装简单,使用方便,基础功能免费。 TwoNav可帮助你将浏览器书签集中式管理&#…

Qt5开发及实例V2.0-第三章-Qt布局管理

Qt5开发及实例V2.0-第三章-Qt布局管理 第3章 Qt 5布局管理3.1 分割窗口QSplitter类3.2 停靠窗口QDockWidget类3.3 堆栈窗体QStackedWidget类3.4 基本布局(QLayout) 本章相关例程源码下载1.Qt5开发及实例_CH301.rar 下载2.Qt5开发及实例_CH302.rar 下载3.…

将json-bigint处理为数值分区数组的字段全部自动转为字符串

json-bigint虽然能帮我们处理好id 但 他的模式 显然不是直接可以用的 我们如果要到业务逻辑单独处理 那就太麻烦了 对系统也非常不友好 我们可以在vue项目中 src目录下创建一个utils 下面创建一个conversionLong.js 这个名字大家随便取 参考代码如下 var data {}; const Br…

黑马JVM总结(十四)

(1)分代回收_1 Java虚拟机都是结合前面几种算法,让他们协同工作,具体实现是虚拟机里面一个叫做分代的垃圾回收机制,把我们堆内存大的区域划分为两块新生代、老年代 新生代有划分为伊甸园、幸存区Form、幸存区To 为什…

Linux常用工具

文章目录 前言一、Linux编辑器-vim使用1.vim的基本概念2. vim的基本操作3. vim命令集1. 正常模式1. 模式切换和光标移动2. 删除文字及复制3. 其他操作 2. 底行模式 二、Linux编译器-gcc/g使用1. 命令和选项2. 预处理3. 编译4. 汇编(生成机器可识别代码)5. 连接(生成可执行文件或…

工业相机镜头选型相关内容参数(1)

工业相机镜头选型相关内容参数(1)https://www.bilibili.com/video/BV1PF411r7Yy/?spm_id_from333.999.0.0

C#通过重写Panel改变边框颜色与宽度的方法

在C#中,Panel控件是一个容器控件,用于在窗体或用户控件中创建一个可用于容纳其他控件的面板。Panel提供了一种将相关控件组合在一起并进行布局的方式。以下是Panel控件的详细使用方法: 在窗体上放置 Panel 控件: 在 Visual Studio 的窗体设计器中,从工具箱中拖动并放置一…

接口测试以及接口测试用例设计

1. 测试点 功能测试 单接口功能: 手工测试中的单个业务模块,一般对应一个接口 登录业务---->登录接口加入购物车业务---->加入购物车接口订单业务---->订单业务接口支付业务--->支付业务接口借助工具、代码以此绕开前端界面,组织接口所需要…

MySQL数据库简介+库表管理操作+数据库用户管理

Mysql Part 1 一、数据库的基本概念1.1 使用数据库的必要性1.2 数据库基本概念1.2.1 数据(Data)1.2.2 表1.2.3 数据库1.2.4 数据库管理系统(DBMS)1.2.5 数据库系统 1.3 数据库的分类1.3.1 关系数据库 SQL1.3.2 非关系数据库 NoSQL…

MySQL主从数据库搭建

1 背景 最近工作需要对比几种数据库技术方案,主从读写分离集群也是其中之一。现将该集群搭建过程记录下来,以便后面查看回忆。 2 主从集群 2.1 原理 主从复制的原理如下图所示: 2.2 集群划分 我在搭建主从集群时已经使用用虚拟机安装了do…

【数据结构】树的存储结构;树的遍历;哈夫曼树;并查集

欢~迎~光~临~^_^ 目录 1、树的存储结构 1.1双亲表示法 1.2孩子表示法 1.3孩子兄弟表示法 2、树与二叉树的转换 3、树和森林的遍历 3.1树的遍历 3.1.1先根遍历 3.1.2后根遍历 3.2森林的遍历 3.2.1先序遍历森林 3.2.2中序遍历森林 4、树与二叉树的应用 4.1哈夫曼树…

redis桌面连接工具Another Redis Desktop Manager使用介绍

Another Redis Desktop Manager是一种类似于navicat的数据库连接工具,专门用来连接redis,使用起来非常简单方便,在这里推荐给大家。 没有用过这个软件的,首先通过下面的网盘链接下载Another Redis Desktop Manager 百度网盘redi…

SQL死锁进程内容查询语句

1.方式1 SELECT object_name(A.resource_associated_entity_id) as TABLENAME, A.request_session_id AS SPID,DB_NAME(B.dbid) AS DBName,B.blocked,B.dbid,B.program_name,B.waitresource,B.lastwaittype,B.loginame,B.hostname,B.login_time,B.last_batch--,B.* FROM sy…

Qt5开发及实例V2.0-第四章Qt基本对话框

Qt5开发及实例V2.0-第四章Qt基本对话框 第4章 Qt 5基本对话框4.1 标准文件对话框类4.1.1 函数说明4.1.2 创建步骤 4.2 标准颜色对话框类4.2.1 函数说明4.2.2 创建步骤 4.3 标准字体对话框类4.3.1 函数说明4.3.2 创建步骤 4.4 标准输入对话框类4.4.1 标准字符串输入对话框4.4.2 …

全是模板的数据分析工具有哪些?

当一个全是模板的数据分析工具,一个以点击、拖拉拽就能制作报表的工具摆在眼前,人人都能随需分析,自定义分析,在极短的时间内实现智能数据可视化分析挖掘。SpeedBI数据分析云就是这样的一个全是模板且点击、拖拉拽做分析报表的数据…

【SpringMVC】基础部分

SpringMvc Spring MVC 是Spring提供的一个实现了Web MVC设计模式的轻量级Web框架。 MVC(Model View Controller),一种用于设计创建Web应用程序表现层的模式 Model(模型):数据模型,用于封装数据…