gpt4 book ai didi

matlab - 水箱 Material 成本设计优化

转载 作者:行者123 更新时间:2023-12-02 05:49:14 24 4
gpt4 key购买 nike

改进工程设计的一种方法是以最小化或最大化问题的形式制定描述设计的方程。这种方法称为设计优化。需要最小化数量的例子是能源消耗和建筑 Material 。要最大化的项目是使用生命周期和容量,例如桥梁可以支撑的车辆重量。在这个项目中,我们考虑最小化与 build 水箱相关的 Material 成本的问题。水箱由半径为r、高度为h的圆柱形部分和半球形顶部组成。该水箱的设计容量为 500 立方米,装满后可容纳 500 立方米。圆柱体的表面积为 2*pi*rh,体积为 pi*r^2。半球形顶部的表面积由 2*pi*r^2 给出,体积由 2*pi*r^3/3 给出。 build 储 jar 圆柱形部分的成本为每平方米表面积 300 美元;半球形部分的成本为每平方米 400 美元。使用 fminbnd 函数计算导致成本最小的半径。计算相应的高度h。

我得到了正确的答案,但它非常困惑。我创建了一堆函数。我想知道我是否可以创建一个函数?...让我们将其命名为 ONEFUN

function R = findR(x)
h = (1500-2.*pi*x.^3)./(3.*pi.*x.^2);
R = 2.*pi.*x.*(h) + 2.*pi.*x.^2+pi.*x.^2;

function H = findH(x)
H = (1500-2.*pi*x.^3)./(3.*pi.*x.^2);

function [Cc, Chs, Tc] = Costs(r,h) % Cc - Cost of Cylinder, Chs - Cost of Hemishpere,
%Tc - Total Cost
Cc = ((2.*pi.*r.*h) + (pi.*r.^2)).*300;
Chs = (2.*pi.*r.^2).*400;
Tc = Cc+Chc;

我想过使用 switch、response 但我不知道该怎么做。

function Anwsers
response = input('Type "find r", "find h", "costHS", "costC", "total": ','s');
response = lower(response);
switch response
case 'find r'
Radius = fminsearch(@ONEFUN, [1]);
case 'find h'
Hight = findH(r)
case 'costHS'

case 'costC'

case 'total'

otherwise
disp('You have not entered a proper choice.')
end

我将不胜感激并提供帮助

最佳答案

在一个函数中执行此操作是一个坏主意。很多简单的函数,每个函数只做一件事就很好。

从我的角度来看,大多数困惑似乎都是简洁的名称、神奇的数字、依赖于运算符优先级和重复。

h = (1500- (2.*pi*x.^3)./(3.*pi.*x.^2)); 例如,我认为......为什么不使用同名的函数?相同的代码两次。

克苏鲁名字中的数字 1500、300 和 400 从何而来?

我自己从来不热衷于单字符函数名称,但这可能是因为我不熟悉用数学方式表达问题。

关于matlab - 水箱 Material 成本设计优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19199659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com