## 495 Reputation

10 years, 303 days
Maple is to me difficult. The first version I bought was Maple9, and it was more than 15 years ago. But, I couldn't use it, feeling it too difficult. But, three years ago, I thought Maple might be helpful to my study, and since then, I have continued to learn Maple. As I got able to read the Maple help, I think that I could get to use maple better now than before. But, I feel that I am a beginner yet.

## Thank you....

Thank you for teaching me about expanding a denominator.

I could know owing to you that normal with expanded is the specific command for it.

And, with applyop, I could know that it is possible to limit the part expanded to a part of an expression.

Thank you.

Best wishes.

taro

## Thank you....

I could know how to use evalindets owing to you. And, I couldn't believe that its use with d-> op(d)*'h'(op(d))

will bring the result which I want to obtain. It looks a magic to me.

h(x), which means dx/x, is the expression frequently used in the field I study in economics.

So, I had wondered whether Maple can do that calculation. And, I had thought that

if it was impossible, there might have been the limit of using CAS including Maple in reading and writing papers.

But, as I had been still a newbie in using maple and am so still now, I had thought that the time I would find how to

do that logarithmic differentiation would be in the unknownablely further future, even if there would be.

Thank you for teaching how to do logarithmic differentiation with maple to me.

Best wishes.

taro

h(x) which I want to have is  a short form D(x)/x, where D(x) is a total derivative of x, that is dx.

And, i want to modify about x+y  with "h" as

h(x+y)=(x/(x+y))*h(x)+(y/(x+y))*h(y).

And, I want to use that function "h" as h(f(x)*y+x*g(y)) as an input. Then, that function h

returns { (f(x)*y)/(f(x)*y+x*g(y))}*h(f(x)*y) + {x*g(y)/(f(x)*y+x*g(y))}*h(x*g(y))), and

further, it is modified to { (f(x)*y)/(f(x)*y+x*g(y))}*(h(f(x))+h(y))+{x*g(y)/(f(x)*y+x*g(y))}*{h(x)+h(g(y))}.

The expression like D(log(x)) brabra is somewhat long when it is shown on the screen.

Could I make it clear to you what I should make clear? I hope I did so.

@Carl Love

As h(x) is intended as D(x)/x, where D(x) means dx, that is a total derivative of x,

so h(x+y)=(x/(x+y))*h(x)+(y/(x+y))*h(y) means

(x/(x+y))*D(x)/x + (y/(x+y))*D(y)/y, which is D(x)/(x+y) + D(y)/(x+y).

I wrote D(x) for dx, total derivative of x.

And, d(x+y) = dx + dy. So, d(x+y)/(x+y), which is h(x+y), becomes dx/(x+y) + dy/(x+y), which is

what I wrote D(x)/(x+y) + D(y)/(x+y).

Best wishes.

taro

## Thank you...

Thank you very much.

I could understand what you explain.

Best wishes.

taro

It's because almost everyday I report spam, but as I cannot delete them, they remain on the board even after my

report. If a lot more people can delete spams, opportunities a lot of people are worried by the same spams becomes

less.

taro

## another way...

As retrieving deleted posts is said to be easy, I hope that giving a measure to delete posts, not reporting as a spam,

to people with higher than 100 will be considered.

taro

## Thank you...

@Kitonum

Thank you. `n.d` is a symbol in itself.

So, though `convert/string`(n.d) surely returns "n . d", it is natural that `convert/string`(`n.d`) returns "`n.d`".

But, this does not explain why convert(`n.d`,string); retuns "n.d". There must be another reason for it.

But, I will finish my question with my writing of this.

Best wishes.

taro

## convert/string...

`convert/string`(`N.D`);

and

`convert/string`(`Norman`);

bring different results, with the former  "`N.D`" while the latter "Norman" without a back quotation.

## Thank you...

Thank you very much.
FourCornerScripts:= (Center, UpperLeft, LowerLeft, UpperRight, LowerRight)->
nprintf(
"#mscripts(mi(\"%a\"),none(),none(),none(),none(),mn(\"%a\"),mn(\"%a\"))",Center, LowerLeft, UpperLeft
)[LowerRight]^UpperRight:
works fine. And, in the help, it was writen as
In the help a double quote can be written within a string by preceding it with a backslash, as in "abc\"de".
I could learn the use of cat, and \" owing to you. Thank you.

Best wishes.

taro

## Please teach me, if possible...

Thank you for teaching the code.
But, please teach me why you used cat and strings.
cat("#mscripts(mi(\"%a\"),", "none(),"\$4, "mn(\"%a\"),mn(\"%a\"))"),
means
"#mscripts(mi("%a"),none(),none(),none(),none(),mn("%a"),mn("%a"))"

so, I thought that writing the latter was enough. But, if doing so, error message appear, which means
that to use cat and strings as you write is necessary. But, I can't understand why this is so.
So, if you don't mind, please teach me the reason.

Best wishes.

taro

## To use save...

Thank you for your explaining a lot.

And, I had thought that to copy and paste equations to a new worksheet from the previous one often might bring wrong spelling of equations.

But, I thought later that the following way might help avoiding that.

In original worksheet,

>r1:=3*x^2;

>r2:=6*x;

r>3:=proc(y)
y^3;
end proc;

>save(r0,r1,r2,r3,"myfile");

are written, and then suppose that you execute that worksheet.
Then, in the current directory, which you can ascertain with

currentdir();

a file with the name myfile with the next contents is made.

r0 := x^3;
r1 := 3*x^2;
r2 := 6*x;
r3 := proc (y) y^3 end proc;

And, after opening a new worksheet, you write the followings. The lines with ">" is those you enter into maple.

>r1;

r1

r3(5);

>r1;

3x^2

So, on moving to a new worksheet, what is necessary is to save some equations which are necessary in the new worksheet into a file: in my case "myfile," then to read it in a new worksheet.

Through using and managing a file,"myfile" minutely, in which the names of variables are written, I thought, I might be able to avoid the situation that I pay a lot of efforts to find variables, and it might help in making what I write in a file compact and easy to see.

Best wishes.

taro

****************
I decided to make a mpl file where assigned variabes are listed, with save, and in a new worksheet, to read it, so that I could make that workseet as a note of names of equations, which make it easy to enter codes. And, I wrote a workseet where I wrote a package containing
codes. And, now, I am using that package as you taught me in the above reply. And, as for labels of equations, I think I will have maple show it as when I see a worksheet, I think it will make it easy to see which part I am seeing.

taro

## I have a question...

With lprint(%), that typesetting which is the present problem is shown to be
`#mscripts(mi("B"),none(),none(),none(),none(),mn("1"),mn("2"))`[3]^4
I thought at first that if a function that has B, 1, 2, 3, 4 as arguments could be constructed,
then it is a solution to the original question. But, I can't do it.
I will be glad if you show how to make this sort of a function.

Best wishes

taro

## I can't understand your explanation...

arctan(-1)=-Pi/4

So, arctan(-1) - 45*Pi/180 = -Pi/4 - Pi/4 = -Pi/2

And, its tangent is -infinity: tan(-Pi/2)=-infinity.

And, as for evalf(tan(45+270)) = 1.117282703 != -1/2 in your another Reply @taro i think the googled equation from matl... , you hadn't changed 45 or 270 to radian. As tangent takes a value in radian, you have to write as

tan((45/180)*Pi+(270/180)*Pi);

which is absolutely -1, as Pi/4+3/2*Pi is 7*Pi*(1/4).

## Thank you for your teaching...

Thank you for teaching me what you are devising when you write a large worksheet.
I as well wish to use maple for writing the whole part of a paper.

You are writing that you are trying to make what you write not long.
I wonder it might mean you divide the whole paper to some parts.

If so, I as well am thiking of dividing parts of papers through parting complicated calculations into a different mpl file.
And, by taking "brabra.mpl" file into the main worksheet through using the command read "brabra.mpl", I am thinking,
I can make the main worksheet easy to see.
But, on the other hand, I wonder how it is possible to do so not making maple's speed slow.

And, it is useful information to me that there is a way of writing a package where commands I use are written in.
Surely by doing so, codes necessary to write become less, don't they.

Best wishes.

taro

## Thank you...

Mr. Carl, Thank you. I could understand what you kindly explained to me, after a little while of consideration.

"Using arrow in g:=x->diff(f(x),x) requires calculation of diff, each time whenever g is called, which is a waste of

time when g is repeatedly used.

In that case, use g:=unapply(diff(f(x),x),x) or g:=D(f). Then, as, to g a specific function obtained with f is assigned,

g(3) becomes a mere substitution of 3, which is fast as it is only a substitution."

Above is what you taught me, which I am sure of.

Unapply is subtly different from arrow in the meaning that the former calls

the conclete function assigned to a character expressing a function, and makes a new function, like

h:=x^2+2*x; k:=unapply(diff(h(x),x),x) makes k:=x->2*x+2, while m:=x->diff(h,x) only assigns x->diff(h,x) to m,

not calling the conclete content of h.

But, on the other hand, I noticed D(h) is quite slow in its speed of calculation.

restart;

f:= unapply(randpoly([exp,sin,cos,arctan](x), degree= 23, dense), x):

gc();time(D(f)(2));

6.4020000000

gc();time(eval(unapply(diff(f(x),x),x),x=2));

.2690000000

But, anyway, when the contents of D(f) and unapply(diff(f(x),x),x) are assigned to a character as gD and Udf, and that funcion is called like gD(2) and Udf(2), times for that mere subsitution are not so much different between them.

Thank you for telling me a lot.

Best wishes.

taro

 First 10 11 12 13 14 15 16 Last Page 12 of 23
﻿