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

雷达基础导论及MATLAB仿真

文章目录

  • 前言
  • 一、雷达基础导论
  • 二、Matlab 仿真
    • 1、SNR 相对检测距离的仿真
      • ①、Matlab 源码
      • ②、仿真
        • 1)、不同 RCS,SNR 相对检测距离仿真
        • 2)、不同雷达峰值功率,SNR 相对检测距离仿真
    • 2、脉冲宽度相对所要求的 SNR 仿真
      • ①、Matlab 源码
      • ②、仿真
    • 3、功率孔径积相对于距离仿真 及 平均功率相对于孔径大小仿真
      • ①、Matlab 源码
      • ②、仿真
        • 1)、不同 RCS,功率孔径积相对于距离仿真
        • 2)、不同 RCS,平均功率相对于孔径大小仿真
    • 4、SNR 增益相对积累脉冲数仿真
      • ①、Matlab 源码
      • ②、仿真
  • 三、资源自取


前言

本文对雷达基础导论的内容以思维导图的形式呈现,有关仿真部分进行了讲解实现。


一、雷达基础导论

思维导图如下图所示,如有需求请到文章末尾端自取。
在这里插入图片描述

二、Matlab 仿真

1、SNR 相对检测距离的仿真

雷达方程: ( S N R ) o = P t G 2 λ 2 σ ( 4 π ) 3 k T e B F L R 4 (SNR)_o=\frac{P_tG^2 \lambda^2\sigma }{(4\pi)^3kT_eBFLR^4} (SNR)o=(4π)3kTeBFLR4PtG2λ2σ

下面在三种不同数值的 RCS(雷达截面积)和三种不同数值的雷达峰值功率的情况下,对 SNR(信噪比) 相对检测距离的情况进行 Matlab 仿真

①、Matlab 源码

radar_eq.m

function [snr] = radar_eq(pt, freq, g, sigma, te, b, nf, loss, range)
% This program implements Eq. (1.56)
c = 3.0e+8; % speed of light
lambda = c / freq; % wavelength
p_peak = 10*log10(pt); % convert peak power to dB
lambda_sqdb = 10*log10(lambda^2); % compute wavelength square in dB
sigmadb = 10*log10(sigma); % convert sigma to dB
four_pi_cub = 10*log10((4.0 * pi)^3); % (4pi)^3 in dB
k_db = 10*log10(1.38e-23); % Boltzman's constant in dB
te_db = 10*log10(te); % noise temp. in dB
b_db = 10*log10(b); % bandwidth in dB
range_pwr4_db = 10*log10((range).^4); % vector of target range^4 in dB
% Implement Equation (1.56)
num = p_peak + g + g + lambda_sqdb + sigmadb;
den = four_pi_cub + k_db + te_db + b_db + nf + loss + range_pwr4_db;
snr = num - den;
return

相关参数说明:

符号描述单位状态
pt峰值功率W输入
freq雷达中心频率Hz输入
g天线增益dB输入
sigma目标截面积 m 2 m^2 m2输入
te有效噪声温度K输入
b带宽Hz输入
nf噪声系数dB输入
loss雷达损失dB输入
range目标距离(单位或矢量)m输入
snrSNR(单值或矢量,根据输入距离)dB输出

函数 “radar.m” 的设计使它对于输入“距离”,可以接受单个数值,或包含很多距离值的矢量

fig1_12.m

close all
clear all
pt = 1.5e+6; % peak power in Watts
freq = 5.6e+9; % radar operating frequency in Hz
g = 45.0; % antenna gain in dB
sigma = 0.1; % radar cross section in m squared
te = 290.0; % effective noise temperature in Kelvins
b = 5.0e+6; % radar operating bandwidth in Hz
nf = 3.0; %noise figure in dB
loss = 6.0; % radar losses in dB
range = linspace(25e3,165e3,1000); % range to target from 25 Km 165 Km, 1000 points
snr1 = radar_eq(pt, freq, g, sigma, te, b, nf, loss, range);
snr2 = radar_eq(pt, freq, g, sigma/10, te, b, nf, loss, range);
snr3 = radar_eq(pt, freq, g, sigma*10, te, b, nf, loss, range);
% plot SNR versus range
figure(1)
rangekm  = range ./ 1000;
plot(rangekm,snr3,'k',rangekm,snr1,'k -.',rangekm,snr2,'k:')
grid
legend('\sigma = 0 dBsm','\sigma = -10dBsm','\sigma = -20 dBsm')
xlabel ('Detection range - Km');
ylabel ('SNR - dB');
snr1 = radar_eq(pt, freq, g, sigma, te, b, nf, loss, range);
snr2 = radar_eq(pt*.4, freq, g, sigma, te, b, nf, loss, range);
snr3 = radar_eq(pt*1.8, freq, g, sigma, te, b, nf, loss, range);
figure (2)
plot(rangekm,snr3,'k',rangekm,snr1,'k -.',rangekm,snr2,'k:')
grid
legend('Pt = 2.16 MW','Pt = 1.5 MW','Pt = 0.6 MW')
xlabel ('Detection range - Km');
ylabel ('SNR - dB');

②、仿真

仿真参数默认如下:
峰值功率 P t = 1.5 P_t=1.5 Pt=1.5 MW,工作频率 f 0 = 5.6 f_0=5.6 f0=5.6 GHz,天线增益 G = 45 G=45 G=45 dB,有效温度 T e = 290 T_e=290 Te=290 K,雷达损失 L = 6 L=6 L=6 dB,噪声系数 F = 3 F=3 F=3 dB,雷达带宽 B = 5 B=5 B=5 MHz,雷达最小和最大检测距离是 R m i n = 25 R_{min}=25 Rmin=25 km 和 R m a x = 165 R_{max}=165 Rmax=165 km,假定目标截面积 σ = 0.1 \sigma=0.1 σ=0.1 m 2 m^2 m2

1)、不同 RCS,SNR 相对检测距离仿真

在这里插入图片描述

对三种不同数值的 RCS,SNR 相对检测距离的曲线

注:分贝平方米(dBsm):用雷达散射截面的对数值的十倍来表示,符号是σ dBsm,单位是分贝平方米(dBsm),即σ dBsm=10lgσ。例如,RCS 值 0.1 平方米对应的是 -10 分贝平方米(即 -10dBsm)。

结论:从图中可以看到 RCS(雷达截面积)越大,雷达信噪比越大,且随着距离的增加,雷达信噪比逐渐减小;

2)、不同雷达峰值功率,SNR 相对检测距离仿真

在这里插入图片描述

对三种不同数值的雷达峰值功率,SNR 相对检测距离的曲线

结论:从图中可以看到雷达峰值功率越大,雷达信噪比越大,且随着距离的增加,雷达信噪比逐渐减小

2、脉冲宽度相对所要求的 SNR 仿真

雷达检测门限: ( S N R ) o m a x = P t G 2 λ 2 σ ( 4 π ) 3 k T e B F L R m a x 4 (SNR)_{o_{max}}=\frac{P_tG^2\lambda^2\sigma}{(4\pi)^3kT_eBFLR^4_{max}} (SNR)omax=(4π)3kTeBFLRmax4PtG2λ2σ

可以推出脉冲宽度 τ = ( 4 π ) 3 k T e F L R 4 S N R P t G 2 λ 2 σ \tau=\frac{(4\pi)^3kT_eFLR^4SNR}{P_tG^2\lambda^2\sigma} τ=PtG2λ2σ(4π)3kTeFLR4SNR

下面在三种不同的检测距离数值的情况下,对脉冲宽度相对所要求 SNR(信噪比)的情况进行 Matlab 仿真

①、Matlab 源码

fig1_13.m

close all
clear all
pt = 1.e+6; % peak power in Watts
freq = 5.6e+9; % radar operating frequency in Hz
g = 40.0; % antenna gain in dB
sigma = 0.1; % radar cross section in m squared
te =300.0; % effective noise temperature in Kelvins
nf = 5.0; %noise figure in dB
loss = 6.0; % radar losses in dB
range = [75e3,100e3,150e3]; % three range values
snr_db = linspace(5,20,200); % SNR values from 5 dB to 20 dB 200 points
snr = 10.^(0.1.*snr_db); % convert snr into base 10
gain = 10^(0.1*g); %convert antenna gain into base 10
loss = 10^(0.1*loss); % convert losses into base 10
F = 10^(0.1*nf); % convert noise figure into base 10
lambda = 3.e8 / freq; % compute wavelength
% Implement Eq.(1.57)
den = pt * gain * gain * sigma * lambda^2;
num1 = (4*pi)^3 * 1.38e-23 * te * F * loss * range(1)^4 .* snr;
num2 = (4*pi)^3 * 1.38e-23 * te * F * loss * range(2)^4 .* snr;
num3 = (4*pi)^3 * 1.38e-23 * te * F * loss * range(3)^4 .* snr;
tau1 = num1 ./ den ;
tau2 = num2 ./ den;
tau3 = num3 ./ den;
% plot tau versus snr
figure(1)
semilogy(snr_db,1e6*tau1,'k',snr_db,1e6*tau2,'k -.',snr_db,1e6*tau3,'k:')
grid
legend('R = 75 Km','R = 100 Km','R = 150 Km')
xlabel ('Minimum required SNR - dB');
ylabel ('\tau (pulse width) in \mu sec');

②、仿真

仿真参数参考上面代码

以下为不同检测距离,脉冲宽度相对所要求的 SNR 仿真
在这里插入图片描述

对三种不同的检测距离数值,脉冲宽度相对所要求的 SNR 曲线

结论:从图中可以看到随着雷达 SNR 的增加,脉冲宽度逐渐增大;对应于同一雷达 SNR,距离越远所需要的脉冲宽度越宽

3、功率孔径积相对于距离仿真 及 平均功率相对于孔径大小仿真

搜索雷达方程: S N R = P a v A σ 4 π k T e F L R 4 T s c Ω SNR=\frac{P_{av}A\sigma}{4\pi kT_eFLR^4}\frac{T_{sc}}{\Omega} SNR=4πkTeFLR4PavAσΩTsc

功率孔径积: P a v A P_{av}A PavA

①、Matlab 源码

power_aperture.m

function PAP = power_aperture(snr,tsc,sigma,range,te,nf,loss,az_angle,el_angle)
% This program implements Eq. (1.67)
Tsc = 10*log10(tsc); % convert Tsc into dB
Sigma = 10*log10(sigma); % convert sigma to dB
four_pi = 10*log10(4.0 * pi); % (4pi) in dB
k_db = 10*log10(1.38e-23); % Boltzman's constant in dB
Te = 10*log10(te); % noise temp. in dB
range_pwr4_db = 10*log10(range.^4); % target range^4 in dB
omega = (az_angle/57.296) * (el_angle / 57.296); % compute search volume in steraradians
Omega = 10*log10(omega); % search volume in dB
% implement Eq. (1.67)
PAP = snr + four_pi + k_db + Te + nf + loss + range_pwr4_db + Omega ...- Sigma - Tsc;
return

相关参数说明:

符号描述单位状态
snr灵敏度snrdB输入
tsc扫描时间s输入
sigma目标截面积 m 2 m^2 m2输入
range目标距离(单位或矢量)m输入
te有效噪声温度K输入
nf噪声系数dB输入
loss雷达损失dB输入
az_angle搜索区域的方位角范围 ∘ ^\circ 输入
el_angle搜索区域的俯仰角范围 ∘ ^\circ 输入
PAP功率孔径积dB输出

fig1_16.m

close all
clear all
tsc = 2.5; % Scan time i s2.5 seconds
sigma = 0.1; % radar cross section in m sqaured
te = 900.0; % effective noise temperature in Kelvins
snr = 15; % desired SNR in dB
nf = 6.0; %noise figure in dB
loss = 7.0; % radar losses in dB
az_angle = 2; % search volume azimuth extent in degrees
el_angle = 2; %serach volume elevation extent in degrees
range = linspace(20e3,250e3,1000); % range to target from 20 Km 250 Km, 1000 points
pap1 = power_aperture(snr,tsc,sigma/10,range,te,nf,loss,az_angle,el_angle);
pap2 = power_aperture(snr,tsc,sigma,range,te,nf,loss,az_angle,el_angle);
pap3 = power_aperture(snr,tsc,sigma*10,range,te,nf,loss,az_angle,el_angle);
% plot power aperture prodcut versus range
% figure 1.16a
figure(1)
rangekm  = range ./ 1000;
plot(rangekm,pap1,'k',rangekm,pap2,'k -.',rangekm,pap3,'k:')
grid
legend('\sigma = -20 dBsm','\sigma = -10dBsm','\sigma = 0 dBsm')
xlabel ('Detection range in Km');
ylabel ('Power aperture product in dB');
% generate Figure 1.16b
lambda = 0.03; % wavelength in meters
G = 45; % antenna gain in dB
ae = linspace(1,25,1000);% aperture size 1 to 25 meter squared, 1000 points
Ae = 10*log10(ae);
range = 250e3; % rnage of interset is 250 Km
pap1 = power_aperture(snr,tsc,sigma/10,range,te,nf,loss,az_angle,el_angle);
pap2 = power_aperture(snr,tsc,sigma,range,te,nf,loss,az_angle,el_angle);
pap3 = power_aperture(snr,tsc,sigma*10,range,te,nf,loss,az_angle,el_angle);
Pav1 = pap1 - Ae;
Pav2 = pap2 - Ae;
Pav3 = pap3 - Ae;
figure(2)
plot(ae,Pav1,'k',ae,Pav2,'k -.',ae,Pav3,'k:')
grid
xlabel('Aperture size in square meters')
ylabel('Pav in dB')
legend('\sigma = -20 dBsm','\sigma = -10dBsm','\sigma = 0 dBsm')

②、仿真

仿真参数默认如下:

σ \sigma σ T s c T_{sc} Tsc θ e = θ a \theta_e=\theta_a θe=θaRT_e n f ∗ l o s s nf*loss nfloss s n r snr snr
0.1 m 2 0.1m^2 0.1m2 2.5 s 2.5s 2.5s 2 ∘ 2^\circ 2 252 k m 252km 252km 900 K 900K 900K 13 d B 13dB 13dB 15 d B 15dB 15dB
1)、不同 RCS,功率孔径积相对于距离仿真

请添加图片描述

对三种不同的 RCS,功率孔径积相对于检测距离曲线

结论:从图中可以看到随着检测距离的增加,功率孔径积增大;雷达 RCS 越大,功率孔径积也越小
2)、不同 RCS,平均功率相对于孔径大小仿真

请添加图片描述

对三种不同的 RCS,雷达平均功率相对于孔径大小曲线

结论:从图中可以看到随着雷达孔径大小的增加,雷达平均功率呈现下降趋势;雷达 RCS 越大,雷达孔径越小

4、SNR 增益相对积累脉冲数仿真

  • 相干积累: ( S N R ) C I = n p ( S N R ) 1 (SNR)_{CI}=n_p(SNR)_1 (SNR)CI=np(SNR)1
  • 非相干积累: ( S N R ) 1 = ( S N R ) N C I 2 n p + ( S N R N C I 2 ) 4 N P 2 + ( S N R ) ( N C I ) n p (SNR)_1=\frac{(SNR)_{NCI}}{2n_p}+\sqrt{\frac{(SNR_{NCI}^2)}{4N_P^2}+\frac{(SNR)_(NCI)}{n_p}} (SNR)1=2np(SNR)NCI+4NP2(SNRNCI2)+np(SNR)(NCI)
    ( S N R ) N C I = n p ( S N R ) 1 L N C I (SNR)_{NCI}=\frac{n_p(SNR)_1}{L_{NCI}} (SNR)NCI=LNCInp(SNR)1

注: ( S N R ) 1 (SNR)_1 (SNR)1 是产生给定检测概率所要求的单个脉冲的SNR

①、Matlab 源码

pulse_integration.m

function [snrout] = pulse_integration(pt, freq, g, sigma, te, b, nf, loss, range,np,ci_nci)snr1 = radar_eq(pt, freq, g, sigma, te, b, nf, loss, range) % single pulse SNRsnr1=0
if (ci_nci == 1) % coherent integrationsnrout = snr1 + 10*log10(np);
else % non-coherent integrationif (ci_nci == 2)snr_nci = 10.^(snr1./10);val1 = (snr_nci.^2) ./ (4.*np.*np);val2 = snr_nci ./ np;val3 = snr_nci ./ (2.*np);SNR_1 = val3 + sqrt(val1 + val2); % Equation 1.87 of textLNCI = (1+SNR_1) ./ SNR_1; % Equation 1.85 of textsnrout = snr1 + 10*log10(np) - 10*log10(LNCI);end
end
return

相关参数说明:

符号描述单位状态
pt峰值功率W输入
freq雷达中心频率Hz输入
g天线增益dB输入
sigma目标截面积 m 2 m^2 m2输入
te有效噪声温度K输入
b带宽Hz输入
nf噪声系数dB输入
loss雷达损失dB输入
range目标距离(单位或矢量)m输入
np积累脉冲数输入
ci_nci1是CI;2是NCI输入
snrSNR(单值或矢量,根据输入距离)dB输出

fig1_21.m

clear all
close all
np = linspace(1,10000,1000);
snrci = pulse_integration(4,94.e9,47,20,290,20e6,7,10,5.01e3,np,1);
snrnci = pulse_integration(4,94.e9,47,20,290,20e6,7,10,5.01e3,np,2);
semilogx(np,snrci,'k',np,snrnci,'k:')
legend('Coherent integration','Non-coherent integration')
grid
xlabel ('Number of integrated pulses');
ylabel ('SNR - dB');

②、仿真

仿真参数见上面源码

一般情况下 SNR 改善相对脉冲积累数
请添加图片描述

当使用积累时的 SNR 改善

结论:从图中可以看到随着积累脉冲数的增加,雷达信噪比逐渐增大;且当积累脉冲数相等时,相干积累信噪比大于非相干积累信噪比

三、资源自取

雷达基础导论.pdf


我的qq:2442391036,欢迎交流!


相关文章:

雷达基础导论及MATLAB仿真

文章目录 前言一、雷达基础导论二、Matlab 仿真1、SNR 相对检测距离的仿真①、Matlab 源码②、仿真1)、不同 RCS,SNR 相对检测距离仿真2)、不同雷达峰值功率,SNR 相对检测距离仿真 2、脉冲宽度相对所要求的 SNR 仿真①、Matlab 源…...

设计模式再探——适配器模式

目录 一、背景介绍二、思路&方案三、过程1.适配器模式简介2.适配器模式的类图3.适配器模式代码4.适配器模式,类适配器模式和对象的对比5.适配器模式终极奥秘 四、总结五、升华 一、背景介绍 最近公司在对业务模型做构建的时候,涉及到和三方系统的对…...

【无标题】光伏逆变器的IEC62109测试,逆变器IEC62109测试项目

光伏逆变器的IEC62109测试,逆变器IEC62109测试项目 逆变器又称电源调整器,根据逆变器在光伏发电系统中的用途可分为独立型电源用和并网用二种。根据波形调制方式又可分为方波逆变器、阶梯波逆变器、正弦波逆变器和组合式三相逆变器。对于用于并网系统的…...

Windows用VM虚拟机安装MacOS Ventura 13.6系统全流程教程(附资源)

安装成果: 所需容量:至少40GB的硬盘空间,推荐80GB以上。 所需资源 VMware虚拟机激活密钥:VMware Workstation Pro 17.0.2MacOS Ventura 13.6的ISO镜像MacOS的解锁工具卡顿优化工具:beamoff 有人反馈说需要能用的ISO镜…...

PHP7和PHP8的新特性

PHP 7 新特性: 改进的性能:最显著的变化就是性能提升,据官方报告,PHP 7 的速度是 PHP 5.6 的两倍。 标量类型声明:PHP 7 添加了 int, float, string 和 bool 四种标量类型声明,这使得函数可以通过预定义参…...

mysql按照日期分组统计数据(date_formatstr_to_date)

学习链接 mysql按照日期分组统计数据 博主-山茶花开时的 【Mysql专栏学习】 mysql按照日期分组统计数据 Mysql的date_format函数想必大家都使用过吧,一般用于日期时间转化,如下所示 # 可以得出 2023-01-01 08:30:50 select DATE_FORMAT(2023-01-01…...

【C++程序员必修第一课】C++基础课程-07:switch 分支选择

1 本课主要内容: 为什么需要有 switch 多分支选择?应用场景在哪里?switch 多分支选择的应用讲解:case, break,default 2 主要知识点: 为什么需要有 switch 多分支选择 思考一个问题,数学老师需要统计班上同…...

initramfs介绍

initramfs介绍 什么是initramfs? initramfs(Initial RAM Filesystem)是一种临时文件系统,它在Linux系统启动过程中被加载到内存中。它包含了必要的驱动程序、工具和配置文件,用于在内核启动后挂载真实的根文件系统之…...

数据结构与算法:二分查找(心得)

前言 前些天我做了一道题目,题目中要求使用二分查找,我便按照我心中的二分查找,信心满满的提交上去了。结果发现无限循环,后面我便去查阅了资料 二分查找的条件 用于查找的内容需要是有序的查找的数量只能是一个 二分查找的二种方…...

项目管理之分析项目特点的方法

在管理项目时,了解项目的目标和实现方法可以帮助我们更好地规划和执行项目。根据项目的目标和实现方法的不同,可以将项目分为四种类型:地、水、火和气。 对于工程项目,采用基于活动任务的计划管理方法,使用活动网络图…...

MyBatisPlus(二十一)乐观锁

使用场景 用于当有多个用户同时修改同一条数据的时候,只允许有一个修改成功。 实现原理 使用一个字段,用于记录数据的版本。 当修改数据时,会去检测当前版本是否是正在修改的版本,同时修改成功后会把 版本号 1。 实现方式 配…...

node 通过axios发送post请求(FormData)

方案一: const axios require(axios) const FormData require(form-data) const fs require(fs)const sdUpscaleOnAzure async (req, res) > {const data new FormData()data.append(image, fs.readFileSync(/temp/ai/sd/download/1.png))let config {hea…...

2024 王道考研-数据结构

第二章 线性表算法题(线性表的顺序表示) 二、综合应用题 01.从顺序表中删除具有最小值的元素(假设唯一)并由函数返回被删元素的值。空出的位 置由最后一个元素填补,若顺序表为空,则显示出错信息并退出运行。 算法思想:搜索整个顺序表&#xf…...

【疯狂Java讲义】Java学习记录(使用jar命令打包)

jar命令 把多个文件打包成一个压缩包——这个压缩包和WinZip的压缩格式是一样的。 区别在于jar压缩的文件默认多一个META-INF的文件夹,该文件夹里包含一个MANIFEST.MF的文件(清单)。 通常来说,得到的压缩包有3种(压缩格…...

数据库第一、二章作业

只为记录与分享 第1,2章作业.xls 题量: 34 满分: 100 一. 单选题(共34题) 1. (单选题)在数据库中,下列说法( )是不正确的。 A. 数据库避免了一切数据的重复B. 若系统是完全可以控制的,则系统可确保更新…...

将数组拆分成斐波那契序列

题目描述 示例 代码如下&#xff1a; public class SplitIntoFibonacci {LinkedList<Integer> res new LinkedList<>();public List<Integer> splitIntoFibonacci(String num) {if(num.length() < 3) return res;if(dfs(num, 0)) return res;return new…...

【Linux】:权限

朋友们、伙计们&#xff0c;我们又见面了&#xff0c;本期来给大家解读一下有关Linux的基础知识点&#xff0c;如果看完之后对你有一定的启发&#xff0c;那么请留下你的三连&#xff0c;祝大家心想事成&#xff01; C 语 言 专 栏&#xff1a;C语言&#xff1a;从入门到精通 数…...

8年软件测试工程师感悟——写给还在迷茫中的朋友

这两天和朋友谈到软件测试的发展&#xff0c;其实软件测试已经在不知不觉中发生了非常大的改变&#xff0c;前几年的软件测试行业还是一个风口&#xff0c;随着不断地转行人员以及毕业的大学生疯狂地涌入软件测试行业&#xff0c;目前软件测试行业“缺口”已经基本饱和。当然&a…...

CleanMyMac苹果电脑清理软件是智商税吗?最全评测价格、清理效果一次说清

这是一篇CleanMyMac最全评测&#xff01;价格、清理效果一次说清&#xff0c;告诉你它真不是智商税! 升级Ventura系统之前&#xff0c;我用的是CleanMyMac X绿色版&#xff08;绝不提倡这个行为&#xff09;。更新到Ventura之后&#xff0c;之前很多绿色软件失效&#xff0c;浪…...

【pytorch 中 torch.max 和 torch.argmax 的区别】

torch.max 和 torch.argmax 的区别 1.torch.max torch.max(input, dim, maxNone, max_indicesNone, keepdimFalse) -->> (Tensor, LongTensor) 作用&#xff1a;找出给定tensor的指定维度dim上的上的最大值&#xff0c;并返回最大值在该维度上的值和位置索引。 应用举…...

前端倒计时误差!

提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

【解密LSTM、GRU如何解决传统RNN梯度消失问题】

解密LSTM与GRU&#xff1a;如何让RNN变得更聪明&#xff1f; 在深度学习的世界里&#xff0c;循环神经网络&#xff08;RNN&#xff09;以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而&#xff0c;传统RNN存在的一个严重问题——梯度消失&#…...

基础测试工具使用经验

背景 vtune&#xff0c;perf, nsight system等基础测试工具&#xff0c;都是用过的&#xff0c;但是没有记录&#xff0c;都逐渐忘了。所以写这篇博客总结记录一下&#xff0c;只要以后发现新的用法&#xff0c;就记得来编辑补充一下 perf 比较基础的用法&#xff1a; 先改这…...

大模型多显卡多服务器并行计算方法与实践指南

一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中&#xff0c;Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式&#xff0c;用于在多个 Goroutine 之间传递数据&#xff0c;从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

Git常用命令完全指南:从入门到精通

Git常用命令完全指南&#xff1a;从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障

关键领域软件测试的"安全密码"&#xff1a;Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天&#xff0c;软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力&#xff0c;从金融交易到交通管控&#xff0c;这些关乎国计民生的关键领域…...

渗透实战PortSwigger靶场:lab13存储型DOM XSS详解

进来是需要留言的&#xff0c;先用做简单的 html 标签测试 发现面的</h1>不见了 数据包中找到了一个loadCommentsWithVulnerableEscapeHtml.js 他是把用户输入的<>进行 html 编码&#xff0c;输入的<>当成字符串处理回显到页面中&#xff0c;看来只是把用户输…...

土建施工员考试:建筑施工技术重点知识有哪些?

《管理实务》是土建施工员考试中侧重实操应用与管理能力的科目&#xff0c;核心考查施工组织、质量安全、进度成本等现场管理要点。以下是结合考试大纲与高频考点整理的重点内容&#xff0c;附学习方向和应试技巧&#xff1a; 一、施工组织与进度管理 核心目标&#xff1a; 规…...