پرونده:Green's function animation.gif
از testwiki
پرش به ناوبری
پرش به جستجو
اندازهٔ این پیشنمایش: ۶۰۰ × ۶۰۰ پیکسل. کیفیتهای دیگر: ۲۴۰ × ۲۴۰ پیکسل | ۴۸۰ × ۴۸۰ پیکسل | ۶۴۰ × ۶۴۰ پیکسل.
پروندهٔ اصلی (۶۴۰ × ۶۴۰ پیکسل، اندازهٔ پرونده: ۱٫۶۹ مگابایت، نوع MIME پرونده: image/gif، چرخشدار، ۲۰۲ قاب، ۲۰ ثانیه)
توجه:به علت مسائل فنی پیشنمایش پروندههای GIF مانند این پرونده، به صورت متحرک نمایش داده نمیشود.
این پرونده از ویکیانبار است و ممکن است توسط پروژههای دیگر هم استفاده شده باشد. توضیحات موجود در صفحهٔ توضیحات پرونده در آنجا، در زیر نشان داده شده است.
خلاصه
| توضیحGreen's function animation.gif |
English: An intuitive animation that shows how Green's functions that solve a differential equation subject to a point-like source can be superposed to solve it subject to an arbitrary source. |
| تاریخ | |
| منبع | اثر شخصی |
| پدیدآور | Hersle |
Julia code
using LinearAlgebra
using Plots
using Printf
function solve(f; x1=0, x2=1)
N = length(f)
x = Array(range(x1, x2, length=N))
h = x[2] - x[1]
diag = fill(+2/h^2, N-2)
semidiag = fill(-1/h^2, N-3)
L = Tridiagonal(semidiag, diag, semidiag)
u = L \ f[2:end-1]
u = cat([0], u, [0], dims=1)
return x, u
end
function animate()
# Store all Green's function solutions
N = 101
U = zeros(N, N)
p = plot()
for i in 1:N
f = [i == j ? 1 : 0 for j in 1:N]
x, u = solve(f)
U[i,:] = u
plot!(p, u)
end
# Solve a real problem
f1 = exp.(-(x.-0.5).^2 / (2*0.01))
x, u1 = solve(f1)
u = zeros(N)
barw = x[2]-x[1] # plot bars with no gap between them
anim = @animate for i in 1:N
y = @sprintf("%.2f", (i-1) / (N-1)) # as string
f2 = [i == j ? 1 : 0 for j in 1:N]
x, u2 = solve(f2)
u += u2 * f1[i]
colors = [i == j ? :black : :red for j in 1:N]
# for some reason, only (1599, 1600) gives a height that is divisible by 2 during mp4 generation
plot(layout=(2, 2), size=(1599, 1600), xlims=(0,1), xticks=([0, 0.5, 1], ["\$0\$", "\$x\$", "\$1\$"]), yticks=nothing, bar_width=barw, titlefontsize=40, tickfontsize=40, framestyle=:box, grid=false, legend=nothing, margin=10Plots.mm, top_margin=0Plots.mm)
# Plot point-source and Green's function solution
bar!(subplot=1, x[i:i], f2[i:i], color=:green, linecolor=:green, bar_width=barw, ylims=(0, 1.10), title="\$\\delta(x-$y)\$")
bar!(subplot=2, x, u2, color=:darkgreen, linecolor=:darkgreen, bar_width=barw, ylims=(0, 0.02), title="\$G(x,$y)\$")
# Plot full source and full solution
bar!(subplot=3, x[1:i], f1[1:i], color=:blue, linecolor=:blue, bar_width=barw, ylims=(0, 1.10), title="\$ \\hat{L}\\,(x) u(x) = f(x < $y) \$")
bar!(subplot=3, x[i+1:end], f1[i+1:end], color=:lightgrey, linecolor=:lightgrey, bar_width=barw, ylims=(0, 1.10))
bar!(subplot=4, x, u1, color=:lightgrey, linecolor=:lightgrey, bar_width=barw, ylims=(0, 0.06))
bar!(subplot=4, x, u, color=:darkblue, linecolor=:darkblue, bar_width=barw, ylims=(0, 0.06), title="\$ u(x) = {\\int}_{0}^{$y} \\! f(x') \\, G(x,x') \\, \\mathrm{d} x' \$")
end
mp4(anim, "green.mp4", fps=5)
run(`ffmpeg -i green.mp4 -vf "fps=10,scale=640:640:flags=lanczos,split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse" -loop 0 green.gif`)
end
animate()
اجازهنامه
من، صاحب حقوق قانونی این اثر، به این وسیله این اثر را تحث اجازهنامهٔ ذیل منتشر میکنم:
این پرونده تحت پروانهٔ Creative Commons Attribution-Share Alike 4.0 International منتشر شده است.
- شما اجازه دارید:
- برای به اشتراک گذاشتن – برای کپی، توزیع و انتقال اثر
- تلفیق کردن – برای انطباق اثر
- تحت شرایط زیر:
- انتساب – شما باید اعتبار مربوطه را به دست آورید، پیوندی به مجوز ارائه دهید و نشان دهید که آیا تغییرات ایجاد شدهاند یا خیر. شما ممکن است این کار را به هر روش منطقی انجام دهید، اما نه به هر شیوهای که پیشنهاد میکند که مجوزدهنده از شما یا استفادهتان حمایت کند.
- انتشار مشابه – اگر این اثر را تلفیق یا تبدیل میکنید، یا بر پایه آن اثری دیگر خلق میکنید، میبایست مشارکتهای خود را تحت مجوز same or compatible license|یکسان یا مشابه با اصل آن توزیع کنید.
عنوان
شرحی یکخطی از محتوای این فایل اضافه کنید
آیتمهایی که در این پرونده نمایش داده شدهاند
توصیفها
این خصوصیت مقداری دارد اما نامشخص است.
۱۶ ژوئن 2021
source of file انگلیسی
original creation by uploader انگلیسی
image/gif
۱٬۷۶۸٬۱۸۵ بایت
۶۴۰ پیکسل
۶۴۰ پیکسل
checksum انگلیسی
af714f460dc4f3e8a555a1f779b65bf75784a23b
تاریخچهٔ پرونده
روی تاریخ/زمانها کلیک کنید تا نسخهٔ مربوط به آن هنگام را ببینید.
| تاریخ/زمان | بندانگشتی | ابعاد | کاربر | توضیح | |
|---|---|---|---|---|---|
| کنونی | ۲۱ دسامبر ۲۰۲۲، ساعت ۲۲:۲۷ | ۶۴۰ در ۶۴۰ (۱٫۶۹ مگابایت) | wikimediacommons>Hersle | Show changing source values |
کاربرد پرونده
صفحهٔ زیر از این تصویر استفاده میکند: