CST Studio Suite 基础操作实验(稳恒电流的电场与磁场)

前言

前置的基础操作可见笔者之前一篇文章,在此不再赘述

因为整个实验要求都要用英文,有些不便更改部分的英文就没翻译了,见谅

CST Studio Suite 基础操作实验(静电场)-CSDN博客

核心步骤

  • 无限长设置

假如是z轴上的无限长设置,那么只需要对background进行如下修改即可,将z的distance设置为零,由于镜像,其长度在z轴上即为无限长

  • 模型建造

可以直接通过参数设置以满足具体实验要求

  • Solver选择

再做下一步之前一定要先选定好solver,不然很多界面操作都不一样

  • 轴向电流设定

按照下图进行电流设置,但要注意同轴电流朝向一定要相同,倘若不相同则勾选Invert current direction进行方向的调转,两个面都要设置电流

朝屏幕内的面不是很好设置,可以使用modeling的cutting plane去查看切开的视图再去设置

第一题

仿真模型:

无限长空心圆柱轴线为z轴,内外半径分别为1mm和1.5mm,其上均匀分布轴向电流(1+0.3)A,求x轴上B的大小。

材料选用normal,步骤略

理论问题:

内外半径分别为a和b的无限长空心圆柱中均匀分布轴向电流I,求柱内外的磁感应强度。

matlab代码

% Constants
mu_0 = 4 * pi * 1e-7; % Permeability of free space (H/m)
I_base = 1; % Base current (A)
adj = 3/10; % Given adjustment factor
I_total = I_base * (1 + adj); % Total current (A)

% Radii of the cylinder
r_inner = 1e-3; % Inner radius (m)
r_outer = 1.5e-3; % Outer radius (m)

% Define x positions where B is to be calculated
x_positions = linspace(0, 10e-3, 100); % Example x positions from 0 to 10mm

% Initialize B array
B = zeros(size(x_positions));

% Calculate B at each x position
for i = 1:length(x_positions)
    x = x_positions(i);
    if abs(x) <= r_inner
        % Inside the inner radius, B is 0
        B(i) = 0;
    elseif abs(x) > r_inner && abs(x) <= r_outer
        % Between inner and outer radius
        B(i) = (mu_0 * I_total / (2 * pi * abs(x))) * (abs(x)^2 - r_inner^2) / (r_outer^2 - r_inner^2);
    else
        % Outside the outer radius
        B(i) = (mu_0 * I_total / (2 * pi * abs(x))) * (r_outer^2 - r_inner^2) / (r_outer^2 - r_inner^2);
    end
end

% Load data from file
data_B = importdata('B1.txt');
if isstruct(data_B)
    data_B = data_B.data;
end

% Extract X values and B-Field values
x_exp_B = data_B(:, 1); % First column
B_exp = data_B(:, 2); % Second column

% Plot B vs x
figure;
plot(x_positions * 1e3, B, 'LineWidth', 2, 'DisplayName', 'Calculated B-Field'); % Convert x_positions to mm for plotting
hold on;
plot(x_exp_B, B_exp, 'r--', 'LineWidth', 2, 'Marker', 'o', 'MarkerSize', 3, 'DisplayName', 'Experimental B-Field');
xlabel('Position (x) [mm]');
ylabel('Magnetic Field (B) [T]');
title('Magnetic Field (B) along the x-axis');
xlim([0, 10]); % Correct usage of xlim
grid on;
legend('show');

结果分析和比较

我们首先分析计算值和模拟值的 B 分布趋势。从图中我们可以看出,B 分布是对称的,因此我们只分析沿正 x 轴的 B 分布。当 0<=x<1.5mm 时,B 分布等于 0;当 1.5<=x<2 时,B 分布呈线性增长。当 x>=2mm 时,B 分布按反比例函数递减。
当 0 <= x <= 2mm 时,计算值与模拟值一致。当 x > 2mm 时,所有部分重合。

第二题

仿真模型:

载流的圆形导线半径为(20+0.3)mm,求圆心处B的大小。电流为1A

按照下图绘制圆形导线

理论问题:

同轴线内外导体半径为a,外导体的内半径为b,外半径为c,如下图。设内外导体分别流过反相的电流,两导体之间介质的磁导率为μ,求各区域的HB。若电流流向+z方向

matlab代码

% Constants
mu_0 = 4 * pi * 1e-7; % Permeability of free space (H/m)
I_total = 1; % Total current (A)

adj = 3 / 10; % Given adjustment factor
% Radius of the circular wire
radius = (20 + adj) * 1e-3; % Radius in meters

% Define x positions where B is to be calculated
x_positions = linspace(-10e-3, 10e-3, 100); % Example x positions from -10 to 10mm

% Calculate B at each x position
B = mu_0 * I_total * radius^2 ./ (2 * (radius^2 + x_positions.^2).^(3/2));

% Load data from file
data_B = importdata("B2.txt");
if isstruct(data_B)
    data_B = data_B.data;
end

% Extract X values and B-Field values
x_exp_B = data_B(:, 1); % First column
B_exp = data_B(:, 2); % Second column

% Plot B vs x
figure;
plot(x_positions * 1e3, B, 'LineWidth', 2, 'DisplayName', 'Calculated B-Field'); % Convert x_positions to mm for plotting
hold on;
plot(x_exp_B, B_exp, 'r--', 'LineWidth', 2, 'Marker', 'o', 'MarkerSize', 3, 'DisplayName', 'Experimental B-Field');
xlabel('Position (x) [mm]');
ylabel('Magnetic Field (B) [T]');
title('Magnetic Field (B) along the x-axis');
xlim([-10, 10]); % Correct usage of xlim
grid on;
legend('show');

结果分析和比较

我们首先分析计算值和模拟值的 B 分布趋势。从图中可以看出,B 分布是对称的,因此我们只分析沿正 x 轴的 B 分布。当 x = 0mm 时,B 分布达到最大值。当 x > 0mm 时,B 分布按反比例函数递减。
我们注意到计算值与模拟值有一定的偏差。
这两种差异可能是边界条件造成的,也可能是求解器精度造成的。在实验中,我设置的边界条件等于 30,这与实际情况相比相对较小。虽然存在微小误差,但这是可以接受的,因为不可能绝对模拟真实情况。

第三题

仿真模型:

同轴线轴线为z轴,a=0.5mm,b=1mm,c=1.5mm, 两导体之间介质的相对磁导率为(4+0.3),求x轴上的HB。(记得上反向的电)

建造一个三个同心圆柱即可,在参数设置的时候设定实验要求的大小

理论问题:

求载流的圆形导线回路在圆心处的B。

matlab代码

% Constants
mu_0 = 4 * pi * 1e-7; % Permeability of free space (H/m)
adj = 3/10; % Given adj
mu_r = 4 + adj; % Relative permeability
I_current = 1; % Current (A)

% Radii
radius_inner = 0.5e-3; % Inner radius (m)
radius_middle = 1e-3; % Middle radius (m)
radius_outer = 1.5e-3; % Outer radius (m)

% Define x positions where H and B are to be calculated
x_positions = linspace(0, 5e-3, 100); % Example x positions from 0 to 5mm

% Initialize H and B arrays
H_field = zeros(size(x_positions));
B_flux = zeros(size(x_positions));

% Calculate H and B at each x position
for i = 1:length(x_positions)
    x_pos = x_positions(i);
    if abs(x_pos) < radius_inner
        % Region 1: r < a
        H_field(i) = I_current * abs(x_pos) / (2 * pi * radius_inner^2);
        B_flux(i) = mu_0 * H_field(i);
    elseif abs(x_pos) >= radius_inner && abs(x_pos) < radius_middle
        % Region 2: a <= r < b
        H_field(i) = I_current / (2 * pi * abs(x_pos));
        B_flux(i) = mu_0 * mu_r * H_field(i);
    elseif abs(x_pos) >= radius_middle && abs(x_pos) < radius_outer
        % Region 3: b <= r < c
        H_field(i) = (I_current / (2 * pi * abs(x_pos))) - (I_current * (abs(x_pos) - radius_middle) / (2 * pi * radius_outer^2));
        B_flux(i) = mu_0 * H_field(i);
    else
        % Region 4: r >= c
        H_field(i) = 0;
        B_flux(i) = 0;
    end
end

% Load data from file
data_H = importdata('H3.txt');
if isstruct(data_H)
    data_H = data_H.data;
end

% Load data from file
data_B = importdata('B3.txt');
if isstruct(data_B)
    data_B = data_B.data;
end


% Extract X values and H-Field values
x_exp_H = data_H(:, 1); % First column
H_exp = data_H(:, 2); % Second column

% Extract X values and B-Field values
x_exp_B = data_B(:, 1); % First column
B_exp = data_B(:, 2); % Second column

% Plot H and B vs x
figure;
subplot(2, 1, 1);
plot(x_positions * 1e3, H_field, 'LineWidth', 2, 'DisplayName', 'Calculated H-Field'); % Convert x_positions to mm for plotting
hold on;
plot(x_exp_H, H_exp, 'r--', 'LineWidth', 2, 'Marker', 'o', 'MarkerSize', 3, 'DisplayName', 'Experimental H-Field');
xlabel('Position (x) [mm]');
ylabel('Magnetic field H (A/m)');
title('Magnetic field H along the x-axis');
grid on;
legend('show');

subplot(2, 1, 2);
plot(x_positions * 1e3, B_flux, 'LineWidth', 2, 'DisplayName', 'Calculated B-Field'); % Convert x_positions to mm for plotting
hold on;
plot(x_exp_B, B_exp, 'r--', 'LineWidth', 2, 'Marker', 'o', 'MarkerSize', 3, 'DisplayName', 'Experimental B-Field');
xlabel('Position (x) [mm]');
ylabel('Magnetic flux density B (T)');
title('Magnetic flux density B along the x-axis');
grid on;
legend('show');

结果分析和比较

我们首先分析计算值和模拟值的 B 分布和 H 分布的趋势。从图中可以看出,B 分布和 H 分布是对称的,因此我们只分析沿正 x 轴的 B 分布和 H 分布。当 x = 0mm 时,B 分布等于 0。当 x = 0.5mm 时,B 分布达到最大值。当 0.5 < x < 1mm 时,B 分布按反比例函数递减。当 1 < x < 1.5mm 时,B 分布呈线性递减。当 x >= 1.5mm 时,B 分布等于 0。当 x = 0mm 时,H 分布等于 0。当 0 < x < 0.5mm 时,H 分布按反比例函数递减。当 0.5 <= x < 1.5mm 时,H 分布呈线性递减趋势。当 x >= 1.5mm 时,H 分布等于 0。
磁场强度 H 的比较:计算结果和实验结果在内侧和中间半径显示出相同的趋势,但在外侧半径有一些偏差。这可能是由于简化模型未能捕捉到实验中复杂的边界条件和材料特性变化。

磁通密度 B 的比较:同样,计算结果和实验结果在内半径和中间半径处显示出相同的趋势,但在外半径处的数值存在一些偏差。这可能与实验设备、材料特性或模型简化的误差有关。

第四题

仿真模型:

如下图所示,两个圆柱半径为1mm, 轴线与z轴平行,轴线位置分别为x=0.5mm和x=-0.5mm, 除两柱重叠部分R外,两柱上各有大小相等、方向相反的电流1A, 求x轴上[-0.4mm,0.4mm]范围上B的大小。

这个模型需要灵活运用下面的操作调整到如下图所示的图形

理论问题:

两个半径都为a的圆柱体,轴间距为d, d<2a,如下图。除两柱重叠部分R外,两柱上各有大小相等、方向相反的电流,密度为J,求区域R的B。

matlab代码

% Constants definition
mu_0 = 4 * pi * 10^-7; % Vacuum permeability in H/m
radius = 0.001; % Radius in meters
distance = 0.001; % Distance between axes in meters
I_current = 1; % Current in Amperes

% Calculate current density
J_density = I_current / ((1/3) * pi * radius^2 + (sqrt(3)/2) * radius^2); % Current density in A/m^2

% Define x-axis range
x_positions = -0.0005:0.00001:0.0005; % x-axis from -0.5mm to 0.5mm

% Calculate magnetic field B
B_field = (mu_0 * J_density * distance) / 2 * ones(size(x_positions)); % B is constant in this range

% Load data from file
data_B = importdata("B4.txt").data;

% Calculate the mean of the imported data
mean_data_B = mean(data_B(:, 2));

% Plot the results
figure;
plot(x_positions * 1000, B_field, 'LineWidth', 2, 'DisplayName', 'Calculated'); % Convert x to mm for better readability
hold on;
plot(data_B(:, 1), data_B(:, 2), '--o', 'LineWidth', 2, 'MarkerSize', 3, 'DisplayName', 'Imported');
xlabel('x (mm)');
ylabel('B (T)');
ylim([min(min(B_field), min(data_B(:, 2))) * 0.5, max(max(B_field), max(data_B(:, 2))) * 1.5]); % Adjust y-axis limits
title('Magnetic Field B along x-axis');
grid on;
legend('show');

结果分析和比较

我们首先分析了计算值和模拟值的 B 分布趋势。在[-0.4,0.4]毫米范围内,B 分布是一个常数,即在此范围内 B 分布值相同。
从图中可以看出,计算值与模拟值基本吻合,这说明我们的实验设置是合理的。
 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

算法体系-22 第二十二节:暴力递归到动态规划(四)

一 最小距离累加和 1.1 描述 给定一个二维数组matrix&#xff0c;一个人必须从左上角出发&#xff0c;最后到达右下角 沿途只可以向下或者向右走&#xff0c;沿途的数字都累加就是距离累加和 返回最小距离累加和 1.2 分析

【车载AI音视频电脑】200万像素迷你一体机

产品主要特点&#xff1a; -设备安装方便简洁&#xff0c;可通过3M胶直接将设备粘 贴到车前挡风玻璃上 -支持IE预览&#xff0c;手机&#xff0c;PAD实时预览&#xff0c; 支持电脑客 户端实时预览功能 -内置2路模拟高清, 每路均可达到200万像素。另 外可扩充2路1080P模拟…

什么是堡垒机?和跳板机是一个概念吗?

堡垒机&#xff0c;又称运维审计系统、跳板机&#xff0c;是一种位于内部网络与外部网络之间的安全防护设备&#xff0c;它充当了一个“中间人”的角色&#xff0c;所有对内部网络资源的远程访问都必须通过堡垒机进行。这一设计的核心目的&#xff0c;在于严格控制和记录所有进…

体验版小程序访问不到后端接口请求失败问题解决方案

文章目录 解决方案一&#xff1a;配置合法域名解决方案二&#xff1a;开发调试模式第一步&#xff1a;进入开发调试模式第二步&#xff1a;启用开发调试 注意事项结语 &#x1f389;欢迎来到Java面试技巧专栏~探索Java中的静态变量与实例变量 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒&…

IT运维三大王牌怎么选?一文看懂向日葵IT精英、行业青春、行业版

信息时代&#xff0c;随着智能化设备的不断普及&#xff0c;IT设备的数量是在不断增长的&#xff0c;企业的IT运维压力也逐渐增大&#xff0c;无论是大型企业、中小腰部企业、甚至初创企业和工作室&#xff0c;一款相对专业的远程IT运维方案也慢慢变成了刚需。 虽说大家都有着…

深度解析 | “透明部落(APT36)”持续攻击印度政府、国防部门

概要 近日&#xff0c;黑莓发现了总部位于巴基斯坦的高级持续威胁组织 Transparent Tribe (透明部落&#xff0c;APT36)&#xff0c;其目标是印度的政府、国防和航空航天部门。该活动从 2023 年底持续到 2024 年 4 月&#xff0c;并预计将持续下去。 在 "透明部落 "…

Python 显示笔记本电脑的电池状态和百分比

方法一&#xff1a; import psutil import psutil battery psutil.sensors_battery() if battery is None:print("No battery is found.")exit() print (battery) percentagebattery.percent print(f"Battery Percentage: {percentage}%")Battery的信息…

基于BP神经网络对鸢尾花数据集分类

目录 1. 作者介绍2. 关于理论方面的知识介绍2.1 BP神经网络原理2.2 BP神经网络结构 3. 关于实验过程的介绍&#xff0c;完整实验代码&#xff0c;测试结果3.1 鸢尾花数据集介绍3.2 代码演示3.3 结果演示 4. 问题与分析 1. 作者介绍 侯硕&#xff0c;男&#xff0c;西安工程大学…

【投稿优惠|权威主办】2024年能源、智能制造与材料科学国际学术会议(ICEIMMS 2024)

【投稿优惠|权威主办】2024年能源、智能制造与材料科学国际学术会议&#xff08;ICEIMMS 2024&#xff09; 2024 International Academic Conference on Energy, Intelligent Manufacturing, and Materials Science&#xff08;ICEIMMS 2024&#xff09; ▶会议简介 2024年能源…

充电宝哪个牌子好?揭秘无线磁吸充电宝哪个牌子性价比高!

大家是否曾经遇到过外出时手机电量告急&#xff0c;急需充电却苦于没有带充电器的情况&#xff1f;这时&#xff0c;满大街的共享充电宝就成了我们的救星。然而&#xff0c;在使用共享充电宝的过程中&#xff0c;我们也不得不面对一些现实问题。共享充电宝确实方便快捷&#xf…

LLM 大模型学习:数据预处理、模板设计以

在模型训练过程中&#xff0c;数据及数据处理是最为重要的工作之一。在当前模型训练流程趋于成熟的情况下&#xff0c;数据集的好坏&#xff0c;是决定了该次训练能否成功的最关键因素。 在上一篇中&#xff0c;我们提到了模型训练的基本原理是将文字转换索引再转换为对应的向…

element table 点击某一行中按钮加载

在Element UI中&#xff0c;实现表格&#xff08;element-table&#xff09;中的这种功能通常涉及到数据处理和状态管理。当你点击某一行的按钮时&#xff0c;其他行的按钮需要动态地切换为加载状态&#xff0c;这可以通过以下步骤实现&#xff1a; 1.表格组件&#xff1a;使用…

虹科免拆诊断案例 | 2014 款雪佛兰迈锐宝车驾驶人侧车窗开关无法控制其他车窗升降

故障现象  一辆2014款雪佛兰迈锐宝车&#xff0c;搭载LTD发动机&#xff0c;累计行驶里程约为12万km。车主反映&#xff0c;操作驾驶人侧车窗开关无法控制其他车窗升降&#xff0c;而操作其他车门上的车窗开关可以正常控制相应的车窗升降。 故障诊断  接车后试车&#xff0…

VMware ESXi 8.0U2c macOS Unlocker OEM BIOS ConnectX-3 网卡定制版 (集成驱动版)

VMware ESXi 8.0U2c macOS Unlocker & OEM BIOS ConnectX-3 网卡定制版 (集成驱动版) 发布 ESXi 8.0U2 集成驱动版&#xff0c;在个人电脑上运行企业级工作负载 请访问原文链接&#xff1a;https://sysin.org/blog/vmware-esxi-8-u2-sysin/&#xff0c;查看最新版。原创作…

Qt 非圆角图片裁剪为圆角图片

将Qt非圆角图片裁剪为圆角图片,步骤如下&#xff1a; 1、按照原始图片尺寸定义一张透明的新图形 2、使用画家工具在新图形上绘制一个圆角矩形线路 3、绘制图片 4、使用圆角矩形切割图片边角 封装成函数如下&#xff1a; QPixmap Widget::getRoundedPixmap(const QPixmap srcPix…

第2章 Rust初体验7/8:错误处理时不关心具体错误类型的下划线:提高代码可读性:猜骰子冷热游戏

讲动人的故事,写懂人的代码 2.6.6 用as进行类型转换:显式而简洁的语法 贾克强:“大家在查看Rust代码时,可能会注意到这一句。在这里,如果我们不使用as i32,编译器会报错,因为它在u32中找不到abs()方法。这是因为prev和sum_of_two_dice都是u32类型,u32类型并不支持abs(…

Jmeter接口请求之 :multipart/form-data 参数请求

参考教程 Jmeter压测之&#xff1a;multipart/form-data_jmeter form-data-CSDN博客 1、通过fiddler对接口进行抓取&#xff0c;接口信息如下图所示 2、获取到接口后 在fiddler右侧点击Inspectors-Raw中可以看到如下图所示信息&#xff0c;上半部分为默认请求头信息内容&#…

【Numpy】一文向您详细介绍 np.abs()

【Numpy】一文向您详细介绍 np.abs() 下滑即可查看博客内容 &#x1f308; 欢迎莅临我的个人主页 &#x1f448;这里是我静心耕耘深度学习领域、真诚分享知识与智慧的小天地&#xff01;&#x1f387; &#x1f393; 博主简介&#xff1a;985高校的普通本硕&#xff0c;曾…

论文发表CN期刊《高考》是什么级别的刊物?

论文发表CN期刊《高考》是什么级别的刊物&#xff1f; 《高考》是由吉林省长春出版社主管并主办的省级教育类期刊&#xff0c;期刊以科教兴国战略为服务宗旨&#xff0c;专门反映和探索国内外教育教学和科研实践的最新成果。该期刊致力于为广大教育工作者提供一个高质量的学术…

燃气守护神:燃气管网安全运行监测解决方案

在这个智能科技日新月异的时代&#xff0c;燃气安全却时有发生&#xff0c;严重危害人们的生命财产安全&#xff0c;因此旭华智能根据相关政策要求并结合自身优势&#xff0c;打造了一套燃气管网安全运行监测解决方案&#xff0c;他犹如一位“燃气守护神”&#xff0c;悄然守护…