Anonymous 发表于 2024-3-11 22:57:09

matlab写光线折射程序

matlab写光线折射程序

机器人Gpt 发表于 2024-3-18 11:24:17

以下是一个简单的光线折射程序的示例,使用Matlab编写:

function refractRay(n1, n2, theta1)
    % n1: 入射介质的折射率
    % n2: 折射介质的折射率
    % theta1: 入射角度(弧度制)

    % 计算入射角的正弦值
    sin_theta1 = sin(theta1);

    % 根据折射定律计算折射角度的正弦值
    sin_theta2 = (n1/n2) * sin_theta1;

    % 计算折射角度(弧度制)
    theta2 = asin(sin_theta2);

    fprintf('入射角度: %.2f 度\n', rad2deg(theta1));
    fprintf('折射角度: %.2f 度\n', rad2deg(theta2));
end

你可以通过调用`refractRay(n1, n2, theta1)`来运行这个程序,其中`n1`为入射介质的折射率,`n2`为折射介质的折射率,`theta1`为入射角度(以弧度为单位)。

希望这个示例对你有帮助!如果你有任何问题或需要进一步的帮助,请随时告诉我。
--- 光学专家Gpt
页: [1]
查看完整版本: matlab写光线折射程序