7/5/2013 1:44 PM | |
Joined: 1/28/2009 Last visit: 9/10/2024 Posts: 6849 Rating: (1365) |
Hello, Can you try use :X^N:= {EXP( N*(LNX))} exponentiel with the prog listBest regards Hamid Hosseini |
Last edited by: hdhosseini at: 7/5/2013 1:47 PMLast edited by: hdhosseini at: 7/5/2013 1:44 PM |
|
7/5/2013 5:07 PM | |
Joined: 9/27/2006 Last visit: 9/20/2024 Posts: 12282 Rating: (2684) |
Hello iad; I can suggest you look at the Open-Source functions for S7 provided by OSCAT.de. They have a range of functions for complex numbers (and a COMPLEX datatype for such operations)available, such as 7.24. CSQRT Type Function: REAL Input X: COMPLEX (Input) Output REAL (result) CSQRT calculates the square root of a complex number This is from version 3.3 of the OSCAT library basic documentation, you can look it up on the web, and also download the oscat_basic_s7 functions, v. 3.32. http://www.oscat.de/downloadmanager/viewcategory/3.html Hope this helps, Daniel Chartier |
Last edited by: dchartier at: 7/5/2013 10:13 PMLast edited by: dchartier at: 7/5/2013 10:12 PMLast edited by: dchartier at: 7/5/2013 5:09 PM |
|
This contribution was helpful to2 thankful Users |
7/5/2013 10:41 PM | |
Joined: 1/28/2009 Last visit: 9/10/2024 Posts: 6849 Rating: (1365) |
Hello, and finally result come out of the forum [code] L "base" L 0.0 >=R JC end L "base" ABS LN L "power" *R EXP T #temp1 L 3.14 L "power" *R T #temp2 COS L #temp1 *R T "real_part" ////////////////////// L #temp2 SIN L #temp1 *R T "im" end: NOP 0 [/code] later I will come with math in details: UPDATE: General solution for (X^N) in SCL(Complex Variables)Best regards Hamid Hosseini |
Last edited by: hdhosseini at: 7/6/2013 9:05 AM |
|
This contribution was helpful to2 thankful Users |
7/8/2013 1:58 PM | |
Joined: 1/28/2009 Last visit: 9/10/2024 Posts: 6849 Rating: (1365) |
Hello Pegaia, What is your idea about checking the followig general solution,Even calculating "-23,5" with output of complex numbers i.e result:= Real Part + j (Imaginary Part).In case of INT numbers just a conversion is needed because this function block supports "Real" numbers: General solution for (X^N) in SCL(Complex Variables)[code] FUNCTION_BLOCK FB100 TITLE = 'General X^N' // // Block Comment... // VERSION: '1.0' AUTHOR: hdhosseini NAME: COMPLEX_CALC FAMILY: FORUM_E // Block Parameters VAR_INPUT // Input Parameters base:REAL:=1.0; Power:REAL:=1.0; END_VAR VAR_OUTPUT // Output Parameters Error:BOOL:=false; complex:BOOL:=false; // true when complex result-false real R_part:REAL:=0.0; I_part:REAL:=0.0; END_VAR VAR // Static Variables END_VAR IF ((base=0) AND (Power=0)) OR (base=0) THEN error:=1; complex:=0; R_part:=0; I_part:=0; else IF (base<0) THEN error:=0; complex:=1; R_part:=EXP (POWER* (LN(ABS(base)))) * COS (POWER*3.14); I_part:=EXP (POWER* (LN(ABS(base)))) * SIN (POWER*3.14);; END_IF; IF (base>0) THEN error:=0; complex:=0; R_part:=EXP (POWER* (LN((base)))) ; I_part:=0.0; END_IF; END_IF; ; END_FUNCTION_BLOCK[/code] Best regards Hamid Hosseini |
7/8/2013 4:21 PM | |
Joined: 9/23/2005 Last visit: 9/19/2024 Posts: 4347 Rating: (1446)
|
Hi, I tried to simulate your behavior (V12 / 1500 / Simulator) WITH Integer expoent and doesn't have problem. AttachmentC:\Users\z0008iwv\Pictures\Untitled_13.zip (292 Downloads) |
Denilson Pegaia |
|
This contribution was helpful to1 thankful Users |
12/11/2018 12:52 PM | |
Joined: 8/24/2006 Last visit: 5/31/2024 Posts: 148 Rating: (9) |
Hi, sorry for my replay, this work at 100% with + and - in awl? Thank you in advace
------------------------------------------------------------------------------------------ |
Last edited by: Jen_Moderator at: 12/12/2018 6:40:55 AMNew subject after splitting |
|
Follow us on