Dialogue de l'auteur. Alexander Smirnov. - page 35

 

Et si vous calculez un tableau de poids quadratiques dans la fonction init(), vous pouvez tout à fait obtenir un bon résultat. En outre, les calculs peuvent être optimisés en utilisant IndicatorCounted(). Eh bien, il se bloque pendant les premières secondes lorsque les périodes sont longues, alors tant pis pour lui...

 
Mathemat:

Et si vous calculez un tableau de poids quadratiques dans la fonction init(), vous pouvez tout à fait obtenir un bon résultat. En outre, les calculs peuvent être optimisés en utilisant IndicatorCounted(). Eh bien, il se bloque pendant les premières secondes lorsque les périodes sont longues, alors tant pis pour lui...

J'ai essayé. Il calcule une régression mobile en utilisant un tableau prêt à l'emploi à la vitesse d'un magicien ordinaire.
Le seul inconvénient est que le tableau s'avère être de dimension A[][20] (il n'y a pas de structures sur isi),
et je dois me souvenir de l'adresse numérique d'une cellule comme sur BESM-3)))
 
Mathemat:

Il se bloque donc pendant les premières secondes lors de longues périodes, alors tant pis pour lui...

Je ne pense pas qu'il devrait y avoir une lenteur notable dans le premier calcul. Mais, tel qu'il apparaît maintenant, nous devrions d'abord calculer les valeurs sortantes (il semble inutile de s'en souvenir), puis calculer les sommes réduites, puis calculer de façon récurrente leurs nouvelles valeurs et, enfin, additionner les valeurs entrantes. Tout cela pour trois sommes (somme propre, dérivées premières et secondes). Si la période est courte, cela suffira pour le calcul complet de la seule somme nécessaire.
D'une manière générale, un forçage aussi extrême ne se justifie que si l'algorithme est conçu pour être optimisé dans le testeur, imho.
 
Ce qui est intéressant, c'est que quel que soit l'ordre du polynôme, le temps de calcul sera à peu près le même (si le tableau des poids est préparé à l'avance).
 
j'ai déterré mon ouvrage - la purée polynomiale
Dossiers :
 
Est-ce trop difficile de donner une explication, Dimitri, notamment sur la signification des paramètres ? L'artisanat est, pour ne pas dire plus, d'une très grande qualité.
 

Ce n'est pas facile :-)

Polynôme : K0*X^0+K1*X^1+K2*X^2+K3*X^3..., K coefficients sont définis dans la ligne K="1/5/6/1/-20" (K0=1, K2=5...). L'argument X change dans la plage de ArgumentMin à ArgumentMax et une certaine courbure est obtenue, qui peut être visualisée dans ControlMode=true, puis cette courbure est utilisée comme coefficients pour le glissement.

Il serait plus intéressant de faire une spline, car il n'est pas facile d'obtenir la forme de courbe souhaitée avec ce polnymode.

 
La courbe est-elle une sorte de fonction de poids des k-types pour la machine à onduler ?
 
Mathemat:
La courbe est-elle une sorte de fonction de poids des k-types pour la machine à onduler ?

Oui, c'est vrai.
 

La valeur du front ( X 1, front de droite) pour le polynôme cubique construit à l'aide de MNC, pour sept points de la série, ( X 7*(-2)+ X 6*(4)+ X 5*(1)+ X 4*(-4)+ X 3*(-4)+ X 2*(8)+ X 1*(39))/42 . La ligne à vérifier est 0, 1, 8, 27, 64, 125, 216. En substituant les six premiers nombres dans la formule, le résultat devrait être 216, car le polynôme cubique aligne la série constituée de cubes. Source, Kendall M et Stewart A.


D'ailleurs, le même polynôme cubique pour sept points, mais donnant une estimation de la valeur par MNC pour les points du milieu, soit

Pour X 4 sera ( X 7*(-2)+ X 6*(3)+ X 5*(6)+ X 4*(7)+ X 3*(6)+ X 2*(3)+ X 1*(-2))/21

Pour X3 ce sera ( X 7*(1)+ X 6*(-4)+ X 5*(2)+ X 4*(12)+ X 3*(19)+ X 2*(16)+ X 1*(-4))/42

Pour X2, ce sera ( X 7*(4)+ X 6*(-7)+ X 5*(-4)+ X 4*(6)+ X 3*(16)+ X 2*(19)+ X 1*(8))/42


En général, il s'agit de formules d'interpolation, donc pour extrapoler, par exemple, jusqu'à X 0, c'est-à-dire dans le futur, au-delà de la série existante, il faut chercher d'autres coefficients dans la formule.