# Help with EES (take derivative from table)

by Hobold
Tags: derivative, table
 P: 84 I'm not sure if you're familiar with EES, but just in case I am asking here because I really have no idea what to do, as I've tried everything I could. Basically, I want to calculate a partial derivative numerically (speed of sound) from a table of values. I have a program that produces a table of pressures and specif mass and I want to take $$\left( \dfrac{\partial p}{\partial \rho} \right)_s \approx \left(\dfrac{p_{i+1} - p_i}{\rho_{i+1} - \rho_i} \right)$$ I've tried creating procedures, functions and stuff like that but I couldn't do anything. Here's basically what I have done most times: PROCEDURE Vsound( : vel ) i:=0 REPEAT i=i+1 a := tablevalue('rev';i;'p') b := tablevalue('rev';i+1;'p') c = tablevalue('rev';i;'rho') d = tablevalue('rev';i+1;'rho') vel := (b-a)/(d-c) UNTIL (i=1499) END Basically I have a parametric table called "rev" with columns "p" and "rho" in which I have 1500 values for each. Then later in the code, after writing stuff to calculate both p and rho, I call that procedure: CALL Vsound(: vel) Though it says that there is no value set for rho. I believe that's because rho is calculated within the program (p is pre-set), though I have no idea how to solve this problem. Ideas? Thanks in advance