计算物理精解【2】

2024-08-28 04:20
文章标签 计算 物理 精解

本文主要是介绍计算物理精解【2】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 矢量运动
    • 矢量
      • 基础
      • 定义
      • 计算方法
      • 示例
    • 矢量的分量
      • 二维空间中的矢量分量
      • 三维空间中的矢量分量
      • 分量的计算
      • 示例
  • 参考文献

矢量运动

矢量

基础

  • 矢量的分量是该矢量在相应轴上的投影。
    在这里插入图片描述
    a x = a c o o s Q , a y = a s i n Q a_x=acoosQ,a_y=asinQ ax=acoosQ,ay=asinQ
  • 求解矢量分量的过程称为分解矢量。
  • 矢量的投影是线性代数和向量分析中的一个重要概念,它描述了一个向量在另一个向量方向上的“分量”大小。具体来说,向量 a \mathbf{a} a在向量 b \mathbf{b} b上的投影是一个标量,表示 a \mathbf{a} a沿着 b \mathbf{b} b方向上的“长度”或“大小”。
  • 已知分量为 a x 和 a y a_x和a_y axay,欲求出它的大小和角度标记
    a = a x 2 + a y 2 t a n Q = a y a x a=\sqrt{a_x^2+a_y^2} \\tanQ=\frac {a_y}{a_x} a=ax2+ay2 tanQ=axay
  • 当某人发射激光束以角度为斜向上 60 度,向前上方从地面射向空中, 当激光束的末尾距离地面某人所处的为 950 米时, 请问,该激光束末尾向下和向前离该人有多远? a x = 950 ∗ c o s ( 6 0 ∘ ) = 475 a y = 950 ∗ s i n ( 6 0 ∘ ) = 822.72 当某人发射激光束以角度为斜向上60度,向前上方从地面射向空中, \\当激光束的末尾距离地面某人所处的为950米时, \\请问,该激光束末尾向下和向前离该人有多远? \\a_x=950*cos(60^\circ)=475 \\a_y=950*sin(60^\circ)=822.72 当某人发射激光束以角度为斜向上60度,向前上方从地面射向空中,当激光束的末尾距离地面某人所处的为950米时,请问,该激光束末尾向下和向前离该人有多远?ax=950cos(60)=475ay=950sin(60)=822.72
julia> angle_deg=60
60julia> angle_rad=angle_deg*pi/180
1.0471975511965976julia> cos(angle_rad)
0.5000000000000001julia> sin(angle_rad)
0.8660254037844386julia> sin(angle_rad)*950
822.7241335952167julia> cos(angle_rad)*950
475.0000000000001
  • Julia语言中cos函数
    用于计算给定角度(以弧度为单位)的余弦值。这个函数是Julia标准库中的一部分,特别是它位于math模块中,但通常不需要显式地调用这个模块,因为Julia会自动引入许多常用的数学函数。

要使用cos函数,你只需直接调用它并传入一个以弧度为单位的角度值。下面是一个简单的例子:

# 计算π/4(即45度角,转换为弧度)的余弦值
angle_rad = pi / 4
cosine_value = cos(angle_rad)println(cosine_value)

在这个例子中,pi是Julia中的一个常量,表示π的值。我们将π除以4得到π/4(即45度角转换为弧度),然后计算这个角度的余弦值,并将结果打印出来。

如果你有一个以度为单位的角度,并且想要计算它的余弦值,你需要先将这个角度转换为弧度。这可以通过将角度乘以π并除以180来实现:

# 假设我们有一个以度为单位的角度
angle_deg = 45# 将角度转换为弧度
angle_rad = angle_deg * pi / 180# 计算余弦值
cosine_value = cos(angle_rad)println(cosine_value)

这样,你就可以使用Julia的cos函数来计算任意角度(以弧度为单位)的余弦值了。

定义

a \mathbf{a} a b \mathbf{b} b是两个非零向量, θ \theta θ a \mathbf{a} a b \mathbf{b} b之间的夹角( 0 ≤ θ ≤ π 0 \leq \theta \leq \pi 0θπ)。则向量 a \mathbf{a} a在向量 b \mathbf{b} b上的投影的长度为:

∣ proj b a ∣ = ∣ a ∣ cos ⁡ θ |\text{proj}_{\mathbf{b}}\mathbf{a}| = |\mathbf{a}|\cos\theta projba=acosθ

其中, ∣ a ∣ |\mathbf{a}| a ∣ b ∣ |\mathbf{b}| b分别是向量 a \mathbf{a} a b \mathbf{b} b的模(长度)。

计算方法

  1. 使用点积(内积)
    向量 a \mathbf{a} a b \mathbf{b} b的点积定义为:
    a ⋅ b = ∣ a ∣ × ∣ b ∣ × cos ⁡ θ \mathbf{a} \cdot \mathbf{b} = |\mathbf{a}| \times |\mathbf{b}| \times \cos\theta ab=a×b×cosθ
    因此,向量 a \mathbf{a} a在向量 b \mathbf{b} b上的投影的长度也可以表示为:
    ∣ proj b a ∣ = a ⋅ b ∣ b ∣ |\text{proj}_{\mathbf{b}}\mathbf{a}| = \frac{\mathbf{a} \cdot \mathbf{b}}{|\mathbf{b}|} projba=bab

  2. 方向
    投影不仅有大小,还有方向。具体来说,如果 θ < π 2 \theta < \frac{\pi}{2} θ<2π(即 a \mathbf{a} a b \mathbf{b} b之间的夹角为锐角或零角),则投影的方向与 b \mathbf{b} b的方向相同;如果 θ > π 2 \theta > \frac{\pi}{2} θ>2π(即 a \mathbf{a} a b \mathbf{b} b之间的夹角为钝角),则投影的方向与 b \mathbf{b} b的方向相反。

示例

假设有两个向量 a = ( 2 , 3 ) \mathbf{a} = (2, 3) a=(2,3) b = ( 4 , 1 ) \mathbf{b} = (4, 1) b=(4,1),我们需要计算 a \mathbf{a} a b \mathbf{b} b上的投影。

  1. 首先计算两个向量的模:
    ∣ a ∣ = 2 2 + 3 2 = 13 |\mathbf{a}| = \sqrt{2^2 + 3^2} = \sqrt{13} a=22+32 =13
    ∣ b ∣ = 4 2 + 1 2 = 17 |\mathbf{b}| = \sqrt{4^2 + 1^2} = \sqrt{17} b=42+12 =17

  2. 接着计算两个向量的点积:
    a ⋅ b = 2 × 4 + 3 × 1 = 11 \mathbf{a} \cdot \mathbf{b} = 2 \times 4 + 3 \times 1 = 11 ab=2×4+3×1=11

  3. 最后计算投影的长度:
    ∣ proj b a ∣ = 11 17 |\text{proj}_{\mathbf{b}}\mathbf{a}| = \frac{11}{\sqrt{17}} projba=17 11

注意:这个结果是投影的长度,而不是投影向量本身。如果需要得到投影向量,还需要将这个长度与 b \mathbf{b} b的单位向量相乘。

矢量的分量

是描述矢量在不同方向上的“大小”或“长度”的数值。在二维或三维空间中,一个矢量可以通过其分量来完全定义。这些分量通常与坐标轴的方向相关联。

二维空间中的矢量分量

在二维平面直角坐标系中,一个矢量 a \mathbf{a} a可以由其 x x x分量和 y y y分量来表示,即:

a = ( a x , a y ) \mathbf{a} = (a_x, a_y) a=(ax,ay)

其中, a x a_x ax是矢量 a \mathbf{a} a x x x轴方向上的分量, a y a_y ay是矢量 a \mathbf{a} a y y y轴方向上的分量。这两个分量都是标量,表示矢量在各自方向上的投影长度。

三维空间中的矢量分量

类似地,在三维空间直角坐标系中,一个矢量 a \mathbf{a} a可以由其 x x x分量、 y y y分量和 z z z分量来表示,即:

a = ( a x , a y , a z ) \mathbf{a} = (a_x, a_y, a_z) a=(ax,ay,az)

其中, a x a_x ax a y a_y ay a z a_z az分别是矢量 a \mathbf{a} a x x x轴、 y y y轴和 z z z轴方向上的分量。这三个分量也都是标量,表示矢量在各自方向上的投影长度。

分量的计算

在已知矢量坐标的情况下,分量的计算是直接的。但在某些情况下,我们可能需要通过其他方式(如投影)来计算分量。例如,在二维空间中,如果知道矢量 a \mathbf{a} a和另一个单位矢量 u \mathbf{u} u(其方向为 x x x轴或 y y y轴),则 a \mathbf{a} a u \mathbf{u} u方向上的分量可以通过投影来计算,即:

proj u a = ∣ a ∣ cos ⁡ θ \text{proj}_{\mathbf{u}}\mathbf{a} = |\mathbf{a}|\cos\theta projua=acosθ

但在这个特定情况下,由于 u \mathbf{u} u是单位矢量且方向与坐标轴一致,因此投影实际上就是 a \mathbf{a} a在该坐标轴上的分量。

示例

假设在二维空间中有一个矢量 a = ( 4 , 3 ) \mathbf{a} = (4, 3) a=(4,3),则:

  • a x = 4 a_x = 4 ax=4 a \mathbf{a} a x x x轴上的分量。
  • a y = 3 a_y = 3 ay=3 a \mathbf{a} a y y y轴上的分量。

在三维空间中,如果有一个矢量 b = ( 1 , − 2 , 3 ) \mathbf{b} = (1, -2, 3) b=(1,2,3),则:

  • b x = 1 b_x = 1 bx=1 b \mathbf{b} b x x x轴上的分量。
  • b y = − 2 b_y = -2 by=2 b \mathbf{b} b y y y轴上的分量。
  • b z = 3 b_z = 3 bz=3 b \mathbf{b} b z z z轴上的分量。

参考文献

1.《物理学基础》
2. 文心一言
3. chatgpt

这篇关于计算物理精解【2】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1113714

相关文章

poj 1113 凸包+简单几何计算

题意: 给N个平面上的点,现在要在离点外L米处建城墙,使得城墙把所有点都包含进去且城墙的长度最短。 解析: 韬哥出的某次训练赛上A出的第一道计算几何,算是大水题吧。 用convexhull算法把凸包求出来,然后加加减减就A了。 计算见下图: 好久没玩画图了啊好开心。 代码: #include <iostream>#include <cstdio>#inclu

uva 1342 欧拉定理(计算几何模板)

题意: 给几个点,把这几个点用直线连起来,求这些直线把平面分成了几个。 解析: 欧拉定理: 顶点数 + 面数 - 边数= 2。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#inc

uva 11178 计算集合模板题

题意: 求三角形行三个角三等分点射线交出的内三角形坐标。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#include <stack>#include <vector>#include <

XTU 1237 计算几何

题面: Magic Triangle Problem Description: Huangriq is a respectful acmer in ACM team of XTU because he brought the best place in regional contest in history of XTU. Huangriq works in a big compa

音视频入门基础:WAV专题(10)——FFmpeg源码中计算WAV音频文件每个packet的pts、dts的实现

一、引言 从文章《音视频入门基础:WAV专题(6)——通过FFprobe显示WAV音频文件每个数据包的信息》中我们可以知道,通过FFprobe命令可以打印WAV音频文件每个packet(也称为数据包或多媒体包)的信息,这些信息包含该packet的pts、dts: 打印出来的“pts”实际是AVPacket结构体中的成员变量pts,是以AVStream->time_base为单位的显

计算数组的斜率,偏移,R2

模拟Excel中的R2的计算。         public bool fnCheckRear_R2(List<double[]> lRear, int iMinRear, int iMaxRear, ref double dR2)         {             bool bResult = true;             int n = 0;             dou

GPU 计算 CMPS224 2021 学习笔记 02

并行类型 (1)任务并行 (2)数据并行 CPU & GPU CPU和GPU拥有相互独立的内存空间,需要在两者之间相互传输数据。 (1)分配GPU内存 (2)将CPU上的数据复制到GPU上 (3)在GPU上对数据进行计算操作 (4)将计算结果从GPU复制到CPU上 (5)释放GPU内存 CUDA内存管理API (1)分配内存 cudaErro

Java - BigDecimal 计算分位(百分位)

日常开发中,如果使用数据库来直接查询一组数据的分位数,就比较简单,直接使用对应的函数就可以了,例如:         PERCENT_RANK() OVER(PARTITION BY 分组列名 ORDER BY 目标列名) AS 目标列名_分位数         如果是需要在代码逻辑部分进行分位数的计算,就需要我们自己写一个工具类来支持计算了 import static ja

OpenStack离线Train版安装系列—2计算节点-环境准备

本系列文章包含从OpenStack离线源制作到完成OpenStack安装的全部过程。 在本系列教程中使用的OpenStack的安装版本为第20个版本Train(简称T版本),2020年5月13日,OpenStack社区发布了第21个版本Ussuri(简称U版本)。 OpenStack部署系列文章 OpenStack Victoria版 安装部署系列教程 OpenStack Ussuri版

新一代车载(E/E)架构下的中央计算载体---HPC软件架构简介

老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节能减排。 无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事.而不是让内心的烦躁、焦虑、毁掉你本就不多的热情和定力。 时间不知不觉中,快要来到夏末秋初。一年又过去了一大半,成