CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

informatique/math

Le-Spain
Le-Spain
Niveau 7
11 décembre 2003 à 19:09:20

On travaille sur unix et on programme en fortran 90 ( pour ceux qui connaissent).
Le problème est de transformer l´équation pour que son informatisation soit possible, et là ya problème.Voilà l´énoncé:

pour modéliser 1 profil d´altitude ( c´est à dire le générer numériquement en écrivant 1 programme en fortran) entre deux points Bot et Top d´altitude différentes, on propose de générer 1 série de points intermédiaires par la méthode de mouvement Brownien à pas fractionné.
En pratique, on calcule l´altitude d´1 point ( le point médian) en fonction de ses 2 voisins, grâce à la relation suivante:

Zm = ( Zg + Zd)/2 +- ( Delta x)^H

où: Zm désigne l´altitude du point médian
Zg celle du point Gauche
Zd celle du point Droit
Delta x la distance horizontale qui sépare les deux points
H 1 nombre choisi entre 0 et 1

On génère 1 relief comprenant 1 nombre de points suffisants ( qui sera toujours une puissance de 2, + 1) en répétant de façon itérative le calcul du point médiant.

1)Ecrivez dans 1 programme fortran la formule du point médian, vérifier que le point médian peut prendre 2 valeurs possibles(aléatoirement)

->fait

2)Il faut ensuite trouver comment itérer ( automatiquement) ce calcul entre Zg et Zm ( qui devient le nouveau Zd à gauche) et Zd et ZM ( qui devient le nouveau Zg à droite).

->problème
On a fixé delta x=x =2
H =0.5
Zbot=10
Ztop=100

Le 1° Zm vaut ( Zbot +Ztop)/2 +(2)^0.5
ou ( Zbot+Ztop)/2 -(2)^0.5

En fait, ce Zm coupe le segment Zbot/Ztop en 2 parties égales. Et ces 2 parties sont encore divisées en 2 parties égales par les Zm du tour suivant.
Je pense qu´il y a 1 phénomène de réccurrence, à généraliser peut-être avec des puissances de 2...

Le truc c´est que je vois comment ça marche ms que je ne vois pas comment généraliser.
Alors si qqn a 1 idée...

Jose_bove-4ever
Jose_bove-4ever
Niveau 9
11 décembre 2003 à 19:13:42

T en DEUG MIAS ? Tu peux me donner les matieres qu´il y a, les heures de cours et ce que tu en pense ? Ca ouvre les portes vers quoi après ?

Merci mec

Le-Spain
Le-Spain
Niveau 7
11 décembre 2003 à 19:20:52

Alors dsl mais je ne suis pas en DEUG MIAS, mais en IUP Génie de l´environnement ( d´où l´application à 1 relief de montagne! ) et en + je ne suis pas 1 mec...(Je sais, ya des jours où on n´a pas de chance...)

Jose_bove-4ever
Jose_bove-4ever
Niveau 9
11 décembre 2003 à 21:30:26

A ok dslé
t´aurais pu mettre La-spain comme pseudo n´es ce pas ?

nuoffer
nuoffer
Niveau 10
11 décembre 2003 à 21:42:04

euh désolé, j´ai pas d´idée

tu pourrais aller voir sur le forum programmation, peut etre que quelqu´un connait

Le-Spain
Le-Spain
Niveau 7
12 décembre 2003 à 17:52:15

Mon pseudo, c´est toute 1 histoire...
Je vais donc aller voir sur le forum programmation.Après tout, ça urge pas . ..Merci quand même.S´il y a des connaisseurs, j´attends vos avis!

VinceDotLink
VinceDotLink
Niveau 10
12 décembre 2003 à 18:02:45

j´ai 14 ans,c´est normal que je ne comprenne pas :snif2:

Le-Spain
Le-Spain
Niveau 7
18 décembre 2003 à 20:42:11

Y´a même pas 1 matheux qui pourrait exprimer Zm(n) en fonction de Zm(n-1)?

Airlink
Airlink
Niveau 10
19 décembre 2003 à 18:37:16

Je comprend pas ton charabia

buz-l-orage
buz-l-orage
Niveau 10
20 décembre 2003 à 00:55:11

humm au hasard, ( j´ai pas très bien pigé comment fonctionne le calcul, donc je vais peut-etre dire une connerie...mais bon..)
j´ai pas compris le Zm et ZM . ..je suppose que c´est les points qui dependent du signe devant delta..
en algo ca donne un truc du genre:

for(i=0;i<N;i++)
{
Zm[i]=(Zbot +Ztop)/2 +(2)^0.5;
ZM[i]=(Zbot +Ztop)/2 -(2)^0.5;
Zbot=ZM[i];
Ztop=Zm[i];
}

apparement c´est un récurrence mais fais attention a ta condition d´arret, soit tu fais une boucle comme j´ai fais , soit tu passes un paramètre a ta fonction et tu teste ce paramètre ( compteur) a chaque appels..

Le-Spain
Le-Spain
Niveau 7
20 décembre 2003 à 09:54:06

Oups oui, j´ai 1 peu buggé dans l´énoncé...En fait ZM et Zm sont la même chose, j´ai juste mis la maj sans faire exprès.
Je vais noter ce que j´ai déjà fait, au cas où ça puisse vous aider...

integer, parameter::b=10, t=100,x=2,n=1,Z=6500
real, parameter::H=0.5
real::a, tableau(n), re(Z)

do i=1,n
call random_number(tableau)

if(tableau(n)<0.5) then
a=-1
else
a=1
endif
enddo

m=((b+t)/2)+ a*(x)**H

write(*,*) " m=",m,a

! ça cétait la 1°question, d´après la prof c juste
Ensuite il faut manifestement faire 1 double boucle vu qu´on doit remplir 1 tableau de 65 cases.

do j= 1,65
re(1)=b
re(65)=t
re(33)=m
re(16)=((m+b)/2)+a*(x/2)**H
re(49)=((m+t)/2)+a*(x/2)**H

toute la difficulté réside ds les autres points, car on peut déterminer sur le papier en quelle position du tableau ils sont.j´ai fait jusqu´à la détermination du 7° Zm en utilisant les formules des Zm d´avant ( Par ex Zm7=Zm6+Zbot...) mais je ne vois pas comment on peut trouver 1 suite logique qui permettrait d´écrire ça dans 1 programme. Si ça peut vous aider je peux quand même l´écrire...

->buz : je vais plancher sur ce que t´as écrit. C´est pas stupide de définir à chaque fois 1 autre bot et top ( b et t dans le programme).
Si y´a d´autres suggestions...

LeBoX
LeBoX
Niveau 10
20 décembre 2003 à 11:34:51

chuis ptet assez bon en maths mais chuis qu´en 3e ! !!!!!!!!!!!!!!!!!!!!!! autrement c bien unix ? eske ça plante - de lachoseàbillou ?

Le-Spain
Le-Spain
Niveau 7
20 décembre 2003 à 12:29:08

Ben je peux pas trop te dire, je ne l´utilise qu´à la fac.Comme on est tous liés en réseau, si on demande tous à l´ordi 1 truc 1 peu gros, oui ça plante.Mais je sais pas si unix existe pr 1 PC personnel. Je sais qu´il y a Linux qui ne plante pas ( à ce qu´on m´a dit) et qu´il y a 1 relation entre unix et linux, mais mes connaissances sur le sujet restent limitées!!

Sous forums
  • Histoire
  • Philosophie
  • Cours et Devoirs
  • Politique
  • Environnement & Nature
  • Métiers & Orientation
La vidéo du moment