[Date Index]
[Thread Index]
[Author Index]
CForm Question
*To*: mathgroup at smc.vnet.net
*Subject*: [mg130107] CForm Question
*From*: jakalof at gmail.com
*Date*: Sun, 10 Mar 2013 00:47:42 -0500 (EST)
*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com
*Delivered-to*: l-mathgroup@wolfram.com
*Delivered-to*: mathgroup-newout@smc.vnet.net
*Delivered-to*: mathgroup-newsend@smc.vnet.net
Hi,
I have a fairly complicated expression that involves arrays; I want to export the expression.
First, I generate 3 lists; entries in the list represent entries in a C Array.
X = Table[x[i], {i, 0, 7}];
Y = Table[y[i], {i, 0, 7}];
Z = Table[z[i], {i, 0, 7}];
Here is what X looks like:
{x[0], x[1], x[2], x[3], x[4], x[5], x[6], x[7]}
Then I do some other work using X, Y, Z and form expressions that I need in C. Here is a typical result that I need to export to C:
1/12 (-y[4] z[1] - y[5] z[1] + y[2] (z[1] - z[3]) + y[4] z[3] +
y[7] z[3] + y[5] z[4] - y[7] z[4] - y[4] z[5] +
y[1] (-z[2] - z[3] + z[4] + z[5]) +
y[3] (z[1] + z[2] - z[4] - z[7]) + y[4] z[7])
The above expression involves values from the X,Y,Z tables created above which is exactly what I want. However, when I use CForm on this expression I get:
(-(y(4)*z(1)) - y(5)*z(1) + y(2)*(z(1) - z(3)) +
y(4)*z(3) + y(7)*z(3) + y(5)*z(4) - y(7)*z(4) -
y(4)*z(5) + y(1)*(-z(2) - z(3) + z(4) + z(5)) +
y(3)*(z(1) + z(2) - z(4) - z(7)) + y(4)*z(7))/12.
This is extremely close to what I want except that the array values are using 'parentheses' rather than the C square brackets. I understand that this stems from my original creation of the Tables X, Y,Z but I don't know how to get around that.
Is there a good way to fix this?
Thanks,
Jak
Prev by Date:
**Re: Numbers on rectangles**
Next by Date:
**How to plot functions**
Previous by thread:
**Units with plots?**
Next by thread:
** Re: CForm Question**
| |