Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update manifest #14

Merged
merged 1 commit into from
May 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -38,15 +38,15 @@ IncompleteLU = "0.2 - 0.3"
JLD2 = "0.4 - 0.5"
LegendrePolynomials = "0.4 - 0.5"
LinearMaps = "3.1 - 3.20"
MoM_Basics = "0.0.8 - 0.1"
MoM_Basics = "0.0.8 - 0.9"
OffsetArrays = "1.1 - 1.30"
Primes = "0.5 - 0.6"
ProgressMeter = "1.5 - 1.10"
SpecialFunctions = "2.0 - 2.5"
StaticArrays = "1.5 - 2.6"
ThreadsX = "0.1 - 0.2"
UnicodePlots = "3"
julia = "1.8 - 1.10"
julia = "1.8 - 1.20"

[extras]
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
Expand Down
2 changes: 1 addition & 1 deletion src/Extends/IOs.jl
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ function saveCubes(cubes, partition; name, dir="", kcubeIndices = nothing)
# 拿到各块的包含邻盒子的id
cubesFarNeighbors_ChunksIndices = ThreadsX.mapi(chunkIndice -> getNeiFarNeighborCubeIDs(cubes, chunkIndice), indices)

pmeter = Progress(length(indices), "Saving cubes...")
pmeter = Progress(length(indices); desc = "Saving cubes...")

# 重新组合 kcubeIndices,以避免层间分区不在同一维度时 子盒子区间计算错误
kindices = isnothing(kcubeIndices) ? nothing : get_partition_map(partition, kcubeIndices)
Expand Down
2 changes: 1 addition & 1 deletion src/MLFMA/AggOnBF/AggCFIE.jl
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ function aggSBFOnLevelCFIE!(aggSBF, disaggSBF, level, trianglesInfo::Vector{Tria
ntri = length(trianglesInfo)

# Progress Meter
pmeter = Progress(nCubes, "Aggregating on RWG (CFIE)...")
pmeter = Progress(nCubes; desc = "Aggregating on RWG (CFIE)...")
# 对盒子循环计算
@threads for iCube in eachindex(cubes)
# 盒子
Expand Down
10 changes: 5 additions & 5 deletions src/MLFMA/AggOnBF/AggEFIE.jl
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ function aggSBFOnLevelEFIE!(aggSBF, disaggSBF, level, trianglesInfo::Vector{Tria
ntri = length(trianglesInfo)

# Progress Meter
pmeter = Progress(nCubes, "Aggregating on RWG (EFIE)...")
pmeter = Progress(nCubes; desc = "Aggregating on RWG (EFIE)...")
# 对盒子循环计算
@threads for iCube in eachindex(cubes)
# 盒子
Expand Down Expand Up @@ -199,7 +199,7 @@ function aggSBFOnLevel!(aggSBF, disaggSBF, level, tetrasInfo::AbstractVector{Tet
# 是否为偏置数组
geoInterval = getGeosInterval(tetrasInfo)
# Progress Meter
pmeter = Progress(nCubes, "Aggregating on SWG (EFIE)...")
pmeter = Progress(nCubes; desc = "Aggregating on SWG (EFIE)...")
# 对盒子循环计算
@threads for iCube in eachindex(cubes)

Expand Down Expand Up @@ -323,7 +323,7 @@ function aggSBFOnLevel!(aggSBF, disaggSBF, level, tetrasInfo::AbstractVector{Tet
# 判断体电流的离散方式
discreteJ::Bool = SimulationParams.discreteVar === "J"
# Progress Meter
pmeter = Progress(nCubes, "Aggregating on PWC (EFIE)...")
pmeter = Progress(nCubes; desc = "Aggregating on PWC (EFIE)...")
# 对盒子循环计算
@threads for iCube in eachindex(cubes)

Expand Down Expand Up @@ -425,7 +425,7 @@ function aggSBFOnLevel!(aggSBF, disaggSBF, level, hexasInfo::AbstractVector{Hexa
JK_0 = Params.JK_0
CT0 = zero(CT)
# Progress Meter
pmeter = Progress(nCubes, "Aggregating on PWC (EFIE)...")
pmeter = Progress(nCubes; desc = "Aggregating on PWC (EFIE)...")
# 对盒子循环计算
@threads for iCube in eachindex(cubes)

Expand Down Expand Up @@ -528,7 +528,7 @@ function aggSBFOnLevel!(aggSBF, disaggSBF, level, hexasInfo::AbstractVector{VT},
geoInterval = getGeosInterval(hexasInfo)

# Progress Meter
pmeter = Progress(nCubes, "Aggregating on RBF (EFIE)...")
pmeter = Progress(nCubes; desc = "Aggregating on RBF (EFIE)...")
# 对盒子循环计算
@threads for iCube in eachindex(cubes)

Expand Down
2 changes: 1 addition & 1 deletion src/MLFMA/AggOnBF/AggMFIE.jl
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ function aggSBFOnLevelMFIE!(aggSBF, disaggSBF, level, trianglesInfo::Vector{Tria
ntri = length(trianglesInfo)

# Progress Meter
pmeter = Progress(nCubes, "Aggregating on RWG (MFIE)...")
pmeter = Progress(nCubes; desc = "Aggregating on RWG (MFIE)...")
# 对盒子循环计算
@threads for iCube in eachindex(cubes)
# 盒子
Expand Down
4 changes: 2 additions & 2 deletions src/MLFMA/PhaseShiftAndTransFactors.jl
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ function setLevelTransFactor!(nLevels::Int, levels::Dict{Int, LV}) where{LV<:Abs


# 进度条
pmeter = Progress(length(2:nLevels), "Calculating translation factors...")
pmeter = Progress(length(2:nLevels); desc = "Calculating translation factors...")

# 从 第“2”层开始计算到 叶 层计算子层到本层的转移因子
for iLevel in 2:nLevels
Expand Down Expand Up @@ -175,7 +175,7 @@ function calαTransOnLevel!(level, truncL, all316FarNeighID, all343InFar316)
# 预分配内存
αTrans = zeros(Complex{FT}, nPoles, 316)

pmeter = Progress(316, "Calculating translation factors on level $(level.ID)...")
pmeter = Progress(316; desc = "Calculating translation factors on level $(level.ID)...")

@floop WorkStealingEx() for iFarNei in 1:316
# 本层盒子中心到远亲盒子中心之间的 对应的 316 个 偏置向量
Expand Down
4 changes: 2 additions & 2 deletions src/MLFMA/Precondition/SAI.jl
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ function sparseApproximateInversePl(Znear::ZnearT{CT}, cubes::AbstractVector) wh
nCubes = length(cubes)

# 进度条
pmeter = Progress(nCubes, "Pₗ")
pmeter = Progress(nCubes; desc = "Pₗ")

# Znn ZnnH 按线程预分配内存
Znnts = [zeros(CT, 1) for _ in 1:nthds]
Expand Down Expand Up @@ -149,7 +149,7 @@ function sparseApproximateInversePr(Znear::ZnearT{CT}, cubes::AbstractVector) wh
nCubes = length(cubes)

# 进度条
pmeter = Progress(nCubes, "Calculating SAI right preconditioner...")
pmeter = Progress(nCubes; desc = "Calculating SAI right preconditioner...")

# Znn ZnnH 按线程预分配内存
Znnts = [zeros(CT, 1) for _ in 1:nthds]
Expand Down
2 changes: 1 addition & 1 deletion src/MLFMA/Precondition/SAIChunks.jl
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ function sparseApproximateInversePl(ZnearChunks::ZnearChunksStruct{CT}, level; n
nCubes = length(cubes)

# 进度条
pmeter = Progress(nCubes, "Pₗ (T) ...")
pmeter = Progress(nCubes; desc = "Pₗ (T) ...")

# 对所有盒子循环
@threads for iCube in 1:nCubes
Expand Down
2 changes: 1 addition & 1 deletion src/PostProcess/CurrentOnGeos.jl
Original file line number Diff line number Diff line change
Expand Up @@ -309,7 +309,7 @@ Jtri ::Marrix{Complex{FT}}, 三角形上加权后的电流
Jtris = zeros(CT, 3, GQPNTri, ntri)

# Progress Meter
pmeter = Progress(ntri, "Calculating J on triangles' gaussquad points ($GQPNTri × $ntri)")
pmeter = Progress(ntri; desc = "Calculating J on triangles' gaussquad points ($GQPNTri × $ntri)")

# 对三角形循环计算
@threads for ti in 1:ntri
Expand Down
8 changes: 4 additions & 4 deletions src/PostProcess/FarField.jl
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ function farField(θs_obs, ϕs_obs,
farEθsϕsrsp = reshape(farEθsϕs, (2, nobs))

# 进度条
pmeter = Progress(nobs, "Calculating farE ($Nθ_obs × $Nϕ_obs)")
pmeter = Progress(nobs; desc = "Calculating farE ($Nθ_obs × $Nϕ_obs)")
# 计算farE
@threads for ii in 1:nobs
# 辐射积分
Expand Down Expand Up @@ -82,7 +82,7 @@ function farField(θs_obs, ϕs_obs, ICoeff::Vector{CT}, geosInfo::Vector{VT}, so
farEθsϕsrsp = reshape(farEθsϕs, (2, nobs))

# 进度条
pmeter = Progress(nobs, "Calculating farE ($(length(θs_obs)) × $(length(ϕs_obs))))")
pmeter = Progress(nobs; desc = "Calculating farE ($(length(θs_obs)) × $(length(ϕs_obs))))")
# 计算farE
@threads for ii in 1:nobs
# 辐射积分
Expand Down Expand Up @@ -145,7 +145,7 @@ function farField(θs_obs, ϕs_obs,


# 进度条
pmeter = Progress(nobs, "Calculating farE ($(length(θs_obs)) × $(length(ϕs_obs))))")
pmeter = Progress(nobs; desc = "Calculating farE ($(length(θs_obs)) × $(length(ϕs_obs))))")
# 计算farE
@threads for ii in 1:nobs
# 辐射积分
Expand Down Expand Up @@ -203,7 +203,7 @@ function farField(θs_obs, ϕs_obs, source; str::String = "")
farEθsϕsrsp = reshape(farEθsϕs, (2, nobs))

# 进度条
pmeter = Progress(nobs, "Calculating source farE ($Nθ_obs × $Nϕ_obs)")
pmeter = Progress(nobs; desc = "Calculating source farE ($Nθ_obs × $Nϕ_obs)")
# 计算farE
@threads for ii in 1:nobs
# 天线的远场电场
Expand Down
6 changes: 3 additions & 3 deletions src/PostProcess/RCS.jl
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ function radarCrossSection(θs_obs, ϕs_obs, ICoeff::Vector{CT},
RCSθsϕsrsp = reshape(RCSθsϕs, (2, nobs))

# 进度条
pmeter = Progress(nobs, "Calculating RCS ($Nθ_obs × $Nϕ_obs)")
pmeter = Progress(nobs; desc = "Calculating RCS ($Nθ_obs × $Nϕ_obs)")
# 计算RCS
@threads for ii in 1:nobs
# 辐射积分
Expand Down Expand Up @@ -81,7 +81,7 @@ function radarCrossSection(θs_obs, ϕs_obs, ICoeff::Vector{CT}, geosInfo::Vecto
RCSθsϕsrsp = reshape(RCSθsϕs, (2, nobs))

# 进度条
pmeter = Progress(nobs, "Calculating RCS ($(length(θs_obs)) × $(length(ϕs_obs))))")
pmeter = Progress(nobs; desc = "Calculating RCS ($(length(θs_obs)) × $(length(ϕs_obs))))")
# 计算RCS
@threads for ii in 1:nobs
# 辐射积分
Expand Down Expand Up @@ -140,7 +140,7 @@ function radarCrossSection(θs_obs, ϕs_obs,
RCSθsϕsrsp = reshape(RCSθsϕs, (2, nobs))

# 进度条
pmeter = Progress(nobs, "Calculating RCS ($(length(θs_obs)) × $(length(ϕs_obs))))")
pmeter = Progress(nobs; desc = "Calculating RCS ($(length(θs_obs)) × $(length(ϕs_obs))))")
# 计算RCS
@threads for ii in 1:nobs
# 辐射积分
Expand Down
2 changes: 1 addition & 1 deletion src/PostProcess/RadiationIntegral.jl
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ function raditionalIntegralNCal(θs_obs, ϕs_obs, geosInfo::Vector{TriangleInfo{
Nθsϕsrsp = reshape(Nθsϕs, (2, nobs))

# Progress Meter
pmeter = Progress(nobs, "Calculating radiational integral ($Nθ_obs × $Nϕ_obs)")
pmeter = Progress(nobs; desc = "Calculating radiational integral ($Nθ_obs × $Nϕ_obs)")
# 输入的为高斯求积点电流则提取中心值
Jgeos2 = if typeof(Jgeos)<:Array{CT, 3}
Jgeos[:, 1, :]
Expand Down
2 changes: 1 addition & 1 deletion src/ZmatAndVvec/CFIE/CFIERWGTri.jl
Original file line number Diff line number Diff line change
Expand Up @@ -368,7 +368,7 @@ function impedancemat4CFIE4PEC(trianglesInfo::Vector{TriangleInfo{IT, FT}}, nrwg
# 线程锁防止对同一数据写入出错
lockZ = SpinLock()
# Progress Meter
pmeter = Progress(trisnum, "Calculating Impedance Matrix($nrwg × $nrwg)")
pmeter = Progress(trisnum; desc = "Calculating Impedance Matrix($nrwg × $nrwg)")

# 外层定义为场基函数循环
@threads for triti in trisIdx
Expand Down
4 changes: 2 additions & 2 deletions src/ZmatAndVvec/EFIE/EFIEPWCHexa.jl
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ Zmat : 阻抗矩阵
# Rsglr = Params.Rsglr
# # Progress Meter
# nbf = size(Zmat, 1)
# pmeter = Progress(hexasnum, "Calculating Z (PWC)($nbf × $nbf)...")
# pmeter = Progress(hexasnum; desc = "Calculating Z (PWC)($nbf × $nbf)...")
# # 外层定义为场基函数循环
# @threads for ti in geoInterval
# # 局域的场六面体
Expand Down Expand Up @@ -321,7 +321,7 @@ function impedancemat4VIE!(Zmat::Matrix{CT}, hexasInfo::AbstractVector{Hexahedra
Rsglr = Params.Rsglr
# Progress Meter
nbf = size(Zmat, 1)
pmeter = Progress(hexasnum, "Calculating Z (PWC)($nbf × $nbf)...")
pmeter = Progress(hexasnum; desc = "Calculating Z (PWC)($nbf × $nbf)...")
# 外层定义为场基函数循环
@threads for ti in geoInterval
# 局域的场六面体
Expand Down
4 changes: 2 additions & 2 deletions src/ZmatAndVvec/EFIE/EFIEPWCTetra.jl
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,7 @@ function impedancemat4VIE!(Zmat::Matrix{CT}, tetrasInfo::AbstractVector{Tetrahed
Rsglr = Params.Rsglr
# Progress Meter
nbf = size(Zmat, 1)
pmeter = Progress(tetrasnum, "Calculating Z (PWC)($nbf × $nbf)")
pmeter = Progress(tetrasnum; desc = "Calculating Z (PWC)($nbf × $nbf)")
# 外层定义为场基函数循环
@threads for ti in geoInterval
# 局域的场四面体
Expand Down Expand Up @@ -356,7 +356,7 @@ end
# Rsglr = Params.Rsglr
# # Progress Meter
# nbf = size(Zmat, 1)
# pmeter = Progress(tetrasnum, "Calculating Z (PWC)($nbf × $nbf)")
# pmeter = Progress(tetrasnum; desc = "Calculating Z (PWC)($nbf × $nbf)")
# # 外层定义为场基函数循环
# @threads for ti in geoInterval
# # 局域的场四面体
Expand Down
2 changes: 1 addition & 1 deletion src/ZmatAndVvec/EFIE/EFIEPWCTetraHexa.jl
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ function impedancemat4VIE!(Zmat::Matrix{CT}, hexasInfo::AbstractVector{Hexahedra
Rsglr = Params.Rsglr
# Progress Meter
nbf = size(Zmat, 1)
pmeter = Progress(hexasnum, "Calculating Z (PWC)($nbf × $nbf)...")
pmeter = Progress(hexasnum; desc = "Calculating Z (PWC)($nbf × $nbf)...")
# 外层定义为场基函数循环
@threads for hexat in hexasInfo
# 场六面体介质对比度
Expand Down
2 changes: 1 addition & 1 deletion src/ZmatAndVvec/EFIE/EFIERBFHexa.jl
Original file line number Diff line number Diff line change
Expand Up @@ -782,7 +782,7 @@ function impedancemat4VIE!(Zmat::Matrix{CT}, hexasInfo::AbstractVector{Hexahedra
lockZ = SpinLock()
nbf = size(Zmat, 1)
# Progress Meter
pmeter = Progress(hexasnum, "Calculating Z (RBF, EFIE) ($nbf × $nbf)...")
pmeter = Progress(hexasnum; desc = "Calculating Z (RBF, EFIE) ($nbf × $nbf)...")
# 外层定义为场基函数循环
@threads for it in geoInterval
# 局域的场六面体
Expand Down
2 changes: 1 addition & 1 deletion src/ZmatAndVvec/EFIE/EFIERWGTri.jl
Original file line number Diff line number Diff line change
Expand Up @@ -290,7 +290,7 @@ function impedancemat4EFIE4PEC!(Zmat::Matrix{Complex{FT}}, trianglesInfo::Vector
# 矩阵大小
nbf = size(Zmat, 1)
# Progress Meter
pmeter = Progress(trisnum, "Calculating Z (RWG, EFIE) ($nbf × $nbf)")
pmeter = Progress(trisnum; desc = "Calculating Z (RWG, EFIE) ($nbf × $nbf)")

# 外层定义为场基函数循环
@threads for triti in trisIdx
Expand Down
2 changes: 1 addition & 1 deletion src/ZmatAndVvec/EFIE/EFIESWGTetra.jl
Original file line number Diff line number Diff line change
Expand Up @@ -726,7 +726,7 @@ function impedancemat4VIE!(Zmat::Matrix{CT}, tetrasInfo::AbstractVector{Tetrahed
# 矩阵大小
nbf = size(Zmat, 1)
# Progress Meter
pmeter = Progress(tetrasnum, "Calculating Z (SWG, EFIE) ($nbf × $nbf)")
pmeter = Progress(tetrasnum; desc = "Calculating Z (SWG, EFIE) ($nbf × $nbf)")
# 外层定义为场基函数循环
@threads for it in geoInterval
# 局域的场四面体
Expand Down
2 changes: 1 addition & 1 deletion src/ZmatAndVvec/EFIE/EFIEVSIERWGPWCHexa.jl
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ function impedancemat4RWGPWC!(Zmat::Matrix{CT}, trisInfo::AbstractVector{Triangl
# 矩阵大小
nbf = size(Zmat, 1)
# Progress Meter
pmeter = Progress(trinum, "Calculating Z (RWG + PWC) ($nbf × $nbf)...")
pmeter = Progress(trinum; desc = "Calculating Z (RWG + PWC) ($nbf × $nbf)...")
# 外层定义为场基函数循环
@threads for it in eachindex(trisInfo)
# 局域的场网格元(几何体)@inbounds
Expand Down
2 changes: 1 addition & 1 deletion src/ZmatAndVvec/EFIE/EFIEVSIERWGPWCTetra.jl
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ function impedancemat4RWGPWC!(Zmat::Matrix{CT}, trisInfo::AbstractVector{Triangl
# 矩阵大小
nbf = size(Zmat, 1)
# Progress Meter
pmeter = Progress(trinum, "Calculating Z (RWG + PWC) ($nbf × $nbf)...")
pmeter = Progress(trinum; desc = "Calculating Z (RWG + PWC) ($nbf × $nbf)...")
# 外层定义为场基函数循环
@threads for it in eachindex(trisInfo)
# 局域的场网格元(几何体)@inbounds
Expand Down
6 changes: 3 additions & 3 deletions src/ZmatAndVvec/EFIE/EFIEVSIERWGRBF.jl
Original file line number Diff line number Diff line change
Expand Up @@ -318,15 +318,15 @@ function impedancemat4RWGRBF!(Zmat::Matrix{CT}, trisInfo::AbstractVector{Triangl
# 矩阵大小
nbf = size(Zmat, 1)
# Progress Meter
pmeter = Progress(trinum, "Calculating Z (RWG + RBF) ($nbf × $nbf)...")
pmeter = Progress(trinum; desc = "Calculating Z (RWG + RBF) ($nbf × $nbf)...")
# 外层定义为场基函数循环
@threads for it in eachindex(trisInfo)
# 局域的场网格元(几何体)@inbounds
trit = trisInfo[it]
trit = trisInfo[it]
# 局部判断奇异性距离
Rsglrlc = Rsglr
# 对源网格元(几何体)循环@inbounds
for js in eachindex(hexasInfo)
for js in eachindex(hexasInfo)
# 局域的源网格元(几何体)
hexas = hexasInfo[js]
# 场源距离
Expand Down
2 changes: 1 addition & 1 deletion src/ZmatAndVvec/EFIE/EFIEVSIERWGSWG.jl
Original file line number Diff line number Diff line change
Expand Up @@ -378,7 +378,7 @@ function impedancemat4RWGSWG!(Zmat::Matrix{CT}, trisInfo::AbstractVector{Triangl
# 矩阵大小
nbf = size(Zmat, 1)
# Progress Meter
pmeter = Progress(trinum, "Calculating Z (RWG + SWG) ($nbf × $nbf)...")
pmeter = Progress(trinum; desc = "Calculating Z (RWG + SWG) ($nbf × $nbf)...")
# 外层定义为场基函数循环@threads
@threads for it in eachindex(trisInfo)
# 局域的场网格元(几何体)
Expand Down
2 changes: 1 addition & 1 deletion src/ZmatAndVvec/MFIE/MFIERWGTri.jl
Original file line number Diff line number Diff line change
Expand Up @@ -285,7 +285,7 @@ function impedancemat4MFIE4PEC(trianglesInfo::Vector{TriangleInfo{IT, FT}}, nrwg
# 线程锁防止对同一数据写入出错
lockZ = SpinLock()
# Progress Meter
pmeter = Progress(trisnum, "Calculating Impedance Matrix($nrwg × $nrwg)")
pmeter = Progress(trisnum; desc = "Calculating Impedance Matrix($nrwg × $nrwg)")

# 外层定义为场基函数循环
@threads for triti in trisIdx
Expand Down
Loading