# strange problem

 Register Blogs Members List Search Today's Posts Mark Forums Read

 March 24, 2005, 04:47 strange problem #1 SS Guest   Posts: n/a I was writing an UDS in which my source term look like this S=Cons*|gradient of dependet variable| where |f| means absolute of f. Since we have to specify S=A+B*dependent variable and B is = dS/d(dependent variable) how can I obtain dS/d(dependent variable) of this expression. Thanks for your help

 March 24, 2005, 23:04 Re: strange problem #2 Saad Guest   Posts: n/a let u = dependent variable, then S = A + B*u S = A + (dS/du)*u S - A = (dS/du)*u du/u = dS/(S-A), Integrating, ln(u) = ln(S-A) + ln(D), where ln(D) = const. of integ. u = D(S-A) now S = C*|du/dx|, x = independent variable, S = C*D*|dS/dx|, let C*D = E = constant S = E*|dS/dx| now either, S = E*dS/dx or S = -E*dS/dx dx = E*dS/S or dx = -E*dS/S, Integrating, x = E*ln(S) + G1 or x = -E*ln(S) + G2, where G1 and G2 are constants of intergation. S = exp((x - G1)/E) or S = exp(x - G2)/-E)

 March 25, 2005, 03:04 Re: strange problem #3 SS Guest   Posts: n/a But the problem is how can I know the value of G1,G2 or E. My problem is reduced to a analytical problem how can I obtain d(|gradient of f|)/df.? SS

 March 25, 2005, 07:30 Re: strange problem #4 Saad Guest   Posts: n/a S = A + (dS/dU)*u S = C*|du/dx| equating the two, A + (dS/du)*u = C*|du/dx| if du/dx > 0 then |du/dx| = du/dx, A + (dS/du)*u = C*du/dx A + u*(dS/dx)*((du/dx)^-1) = C*du/dx A*du/dx + u*dS/dx = C*(du/dx)^2 dS/dx = (du/dx)*(C*(du/dx) - A)/u I assume that du/dx and u are known at every 'x'. dS = (du/dx)*(C*(du/dx) - A)/u*dx, Numerically this becomes, delta(S)= (du/dx)_i*(C*(du/dx)_i - A)/u_i*delta(x), where i represents node number and delta is the difference operator, If (du/dx) < 0 then |du/dx| = -(du/dx)

 March 25, 2005, 12:04 Re: strange problem #5 SS Guest   Posts: n/a But now the problem is that I do not have the expression for A.