tarafından geliştirildi | Bernard Parisse |
---|---|
İlk versiyon | 2000 |
Son sürüm | 1.5.0 (Aralık 2018) |
Depozito | sourceforge.net/p/xcas/code/HEAD/tree |
Yazılmış | C++ |
İşletim sistemi | Linux , Microsoft Windows ve macOS |
Çevre | Microsoft Windows , Linux , Mac OS X , FreeBSD |
Tür | Resmi hesaplama |
Lisans | GNU Genel Kamu Lisansı |
İnternet sitesi | resmi site |
Xcas (belirgin / ikskas /) bir olduğunu özgür yazılım ve açık kaynak ve cebir için Microsoft Windows'un , Apple MacOS (32 bit), Linux ve Unix .
Xcas , C++ ücretsiz bilgisayar cebir kitaplığı (GPL lisansı) olan Giac'ın bir arabirimidir . Giac, Maple ve Matlab , WolframAlpha ve Python , Mathematica ve MuPAD ve Yacas ve Qcas ve WordMat (Microsoft Word için ) ve CPMP-Tools ve ExpressionsinBar (macOS için 64 bit uygulama) ve TI hesap makineleri -89 ile bir uyumluluk moduna sahiptir , TI-92 , Voyage 200 ve TI-Nspire . Bu nedenle , cebirsel algoritmalar geliştirmek için Giac / Xcas'ı ve Maple ile uyumlu ücretsiz bir yazılımı kullanabiliriz veya başka bir yazılımda kullanabiliriz ...
Firefox için Xcas, bir İnternet tarayıcısından kurulum yapılmadan kullanılabilen bir Xcas sürümüdür.
Xcas, Calc elektronik tablosunda ve OpenOffice.org ofis paketinin Writer kelime işlemcisinde resmi hesaplamayı sağlayan CmathOOoCAS eklentisine entegre edilmiştir . Bernard Parisse ve Joseph-Fourier Grenoble Üniversitesi tarafından geliştirilmiştir .
Giac / Xcas, bazı hesap makinelerine KhiCAS adı altında taşınır :
İşte Xcas'ın yapabileceklerinin kısa bir özeti:
Aşağıdaki önceden programlanmış işlevler kullanılır:
Burada daha fazla sipariş bulun: http://www-fourier.ujf-grenoble.fr/~parisse/giac/cascmd_en.pdf
İlk model: Sürtünmesiz bir düşüş İlk yöntem: bir sayı döndüren işlev (darbedeki hız)Dünya'nın yerçekiminin bize 9.81 m s -2 ivme sağladığını biliyoruz , bu yüzden konumu elde etmek için sadece iki kez entegre etmemiz gerekiyor.
6. satırda L'yi iki çözümle dolduruyoruz: biri negatif diğeri pozitif. Sadece ikinci olan pozitif çözümü alacağız (1 indeksini, yani L [1]'i kullanacağız (0 indeksi ilk çözümdür)).
Kullanılan kod:
vitesse_chute_1_1(h):={ local a,v,x,L,temps_chute; a(t):=9.81; v:=unapply(int(a(t),t),t); x:=unapply(int(v(t),t),t); L:=solve(x(t)=h,t); temps_chute:=L[1] retourne v(temps_chute); }:;Yani burada fonksiyon çağrımız var:
vitesse_chute_1_1(9)Kim döner:
13.2883407542Bu, elbette, cismin 9 m yükseklikten sürtünmesiz bir düşüşten sonra zemin seviyesinde ulaştığı hızdır ( m s -1 cinsinden ) .
İkinci yöntem: bir cümle ve bir grafik döndüren işlevspeed_fall_1_1 işleviyle aynı yapıyı koruyoruz , ancak bir cümle ve bir grafik ekliyoruz. Hızın ve konumun önüne bir eksi koyarız, çünkü nesne aşağı düşer, bu da negatif kabul edilir (yükseklik pozitiftir).
Kullanılan kod:
vitesse_chute_1_2(h):={ local a,v,x,L,temps_chute; a(t):=9.81; v:=unapply(int(a(t),t),t); x:=unapply(int(v(t),t),t); L:=solve(x(t)=h,t); temps_chute:=L[1]; title="Altitude et vitesse en fonction du temps"; plot(-x(t),t,0,temps_chute,couleur=2+line_width_6); plot(-v(t),t,0,temps_chute,couleur=1+line_width_6); retourne "Chute de "+string(h)+" mètres : Vitesse au niveau du sol après "+string(temps_chute)+" secondes de chute : "+string(v(temps_chute))+" m.s^(-1) = "+string(v(temps_chute)*3.6)+" km.h^(-1)"; }:;Bu nedenle işlev çağrısına sahibiz:
vitesse_chute_1_2(9)Kim döner:
Grafik olarak da:
İkinci model: Orantılı tipte (hıza) sürtünme ile havada bir düşüş:Bu sefer sürtünme kuvveti dikkate alınır : hız ve konumu veren fonksiyonlar, dinamiğin temel prensibi sayesinde manuel olarak hesaplanmıştır.
Aşağıdaki işlevleri (zamanın) buluruz:
Not: Bunu ve bu kütlelerin son hızının (düşme sırasındaki maksimum hız) 200 km h -1 olduğunu varsayarak alıyoruz .
Ayrıca, hızın ve konumun önüne daha az konulamaz, çünkü formüllerin gerçekleştirilmesinde işaret zaten dikkate alınmıştır.
Kullanılan kod:
vitesse_chute_2(h):={ local g,v,x,L,temps_chute; g:=9.81:; k:=12.4; m:=70:; v:=unapply((m*g)/k*(exp((-t)*(k/m))-1),t); x:=unapply(g*(m/k)^2*(1-e^((-t)*(k/m)))-(m*g*t)/k,t):; L:=solve(x(t)=-h,t) temps_chute:=L[0]; title="Chute de 70 kg de 9 mètre : altitude (vert) et vitesse (rouge) en fonction du temps : (épais = sans frottement ; fin = avec frottements)"; plot(v(t),t,0,temps_chute,couleur=1); plot(x(t),t,0,temps_chute,couleur=2); retourne 0; }:;Bu nedenle işlev çağrısına sahibiz:
vitesse_chute_2(9)Kim döner:
0(Bu, işlevin sonuna kadar okunduğunu doğrulamak için oradadır.)
Grafik olarak da:
İki modelin üst üste binmesiİki grafiğin (sürtünmeli ve sürtünmesiz) gerçekten farklı olduğu görülebilir; Sürtünme durumunda ivme sabit değildir: hız (kırmızı) stabilize olma (yatay olma) eğilimindedir.