Equazioni

Una equazione è costituita da due espressioni separate dal segno = (uguale).

Una equazione deve sempre contenere uno ed un solo segno di uguaglianza tra l'espressione di sinistra e quella di destra.

Una equazione ha quindi la forma:

<espressione> = <espressione>

Una qualsiasi di queste forme è lecita:

e darà lo stesso risultato.

Le equazioni in un sistema devono essere separate da un ritorno carrello. Quindi risulterà errata questa forma

	2*x=(2-x)*(y+1)			(y-x)=2-y^x
e corretta questa forma
2*x=(2-x)*(y+1)
(y-x)=2-y^x
o questa forma
	2 * x = (2-x) * (y+1)
			(y-x) = 2 - y^x
Spazi e righe vuote vengono ignorate.

Gli spazi all'interno di una equazione sono ininfluenti.

Espressione

Una espressione è una sequenza di operandi e di operatori.

Sono operandi:

Sono variabili le grandezze il cui valore è modificato al variare delle soluzioni ammesse.

Le funzioni valutano una espressione e ne ritornano un risultato.

Sono funzioni:

ln		logaritmo naturale di un numero	(sintassi ln(<espr>) )
ln10		logaritmo in base 10 di un numero	(sintassi ln10(<espr>) )
exp		esponente con base e (sintassi exp(<espr>) )
pow		elevazione di potenza (sintassi pow(<espr1>,<espr2>) )
		x^2 è equivalente a pow(x, 2)
sin		seno trigonometrico valutato in radianti (sintassi sin(<espr>) )
cos		coseno trigonometrico valutato in radianti  (sintassi cos(<espr>) )
tan		la tangente trigonometrica  (sintassi tan(<espr>) )
atan		l'arcotangente trigonometrica  (sintassi tan(<espr>) )
cosh		il coseno iperbolico  (sintassi atan(<espr>) )

Dove espr, espr1 e espr2 sono espressioni.

Le tabelle sono aggregati di numeri che elaborano i valori di ingresso ritornando un valore interpolato o estrapolato dai dati.

Sono operatori i segni matematici:

^	elevazione a potenza
/	divisione
*	moltiplicazione
+	addizione
-	sottrazione
La priorità nella valutazione delle espressione è: quindi
2 * 2 ^ 2 viene elaborata come 2 * ( 2 ^ 2 )
2 + 2 * 2 viene elaborata come 2 + ( 2 * 2 )
E' possibile modificare la priorità della operazione utilizzando le parentesi tonde.

Variabili

Le variabili rappresentano numeri reali.

Il nome di variabile inizia con un carattere alfabetico e prosegue con caratteri alfanumerici. Un nome di variabile termina con uno spazio o un operatore.

Il nome di variabile è sensibile ai caratteri maiusculi e minuscoli: Le variabili:

alfa=10
Alfa=12.5
sono differenti.

E' possibile la notazione esponenziale, e quindi:

densita=1.0000280E3
densita=1.0000280e3
densita=1000.0280
sono equivalenti.

Una variabile può essere dichiarata esplicitamente (in questo caso si possono associare alla variabile degli attributi, quali l'indicazione se è costante, il suo valore iniziale (obbligatorio se viene dichiarata la variabile) ed il suo range) o implicitamente nel contesto di una equazione (in questo caso viene inizializzata automaticamente al suo primo utilizzo con valore iniziale 0 e range 0,1).

Valori iniziali

Il valore iniziale delle variabili è preimpostato ad un numero compreso tra 0 e 1.

Per modificare questo range occorre dare la direttiva <iniz>

<iniz>
	var1=valore [const] [range(min, max)], var1=valore [const] [range(min.max)] ...
</iniz>
const e range sono opzionali.

L'attributo const rende la variabile fissa.

Valori tabellari

Se la relazioni tra due variabili non è conosciuta analiticamente ma solamente come dati tabellari è possibile inserirli con la direttiva tabella.

La sintassi è:

<tabella ident="nome_ariabile">
	<dati>
		x1, x2, x3, ..., xn
		y1, y2, y3, ..., yn
	</dati>
</tabella>

I dati sono alternativamente associati alla x e alla y, e dovranno essere quindi sempre in numero pari.