{"group":{"group":{"id":26,"name":"Computational Geometry III","lockable":false,"created_at":"2017-05-05T14:56:57.000Z","updated_at":"2025-12-14T01:33:56.000Z","description":"Plotting not required, but it could help.","is_default":false,"created_by":26769,"badge_id":40,"featured":false,"trending":false,"solution_count_in_trending_period":15,"trending_last_calculated":"2025-12-14T00:00:00.000Z","image_id":405,"published":true,"community_created":false,"status_id":2,"is_default_group_for_player":false,"deleted_by":null,"deleted_at":null,"restored_by":null,"restored_at":null,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ePlotting not required, but it could help.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}","description_html":"\u003cdiv style = \"text-align: start; line-height: normal; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none solid rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"display: block; min-width: 0px; padding-top: 0px; perspective-origin: 289.5px 10.5px; transform-origin: 289.5px 10.5px; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-bottom: 9px; margin-left: 4px; margin-right: 10px; margin-top: 2px; text-align: left; white-space: pre-wrap; perspective-origin: 266.5px 10.5px; transform-origin: 266.5px 10.5px; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"display: inline; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003ePlotting not required, but it could help.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","published_at":"2019-05-08T19:56:32.000Z"},"current_player":null},"problems":[{"id":1650,"title":"LASER Tracker - Mirror Distance and Angle","description":"Determine the mirror's distance and relative angle to the LASER Tracker given the distances to a reference SMR (Spherical Mounted Retro-reflector) and the angle to the SMR.\r\n\r\nTheta is the included angle between d1 and d2.\r\nPhi is the angle of interest and is between d2 and d3.\r\nThe Test method is locate the SMR to capture the mirror reflectance. Record L. Rotate the SMR to be directly viewed by the Tracker. Record d1 and Theta.\r\nGiven Theta, d1, and d2+d3 determine d2 and Phi.\r\nInput: [d1, L, Theta] where L=d2+d3 and d1*cos(Theta) \u003c d2\r\nOutput: [d2 Phi]\r\nExamples:\r\nInput: [2^.5, 2+2^.5, pi/4]..... Output: [2 pi/4]\r\nInput: [2.3994, 4, .2991]..... Output: [3, pi/4 ]","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.440001px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 636px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 332px 318px; transform-origin: 332px 318px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 21px; text-align: left; transform-origin: 309px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eDetermine the mirror's distance and relative angle to the LASER Tracker given the distances to a reference SMR (Spherical Mounted Retro-reflector) and the angle to the SMR.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 294px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 147px; text-align: center; transform-origin: 309px 147px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cimg class=\"imageNode\" width=\"582\" height=\"288\" style=\"vertical-align: baseline;width: 582px;height: 288px\" src=\"data:image/JPEG;base64,/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAEgAkYDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA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Qyy8tLKRzJIeWY/U1eoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACql1ptjesHurK3nZRgGWJXI/MVbpD0pMDzX4XaVptxpGrtNp9pIy6xdKpeBSQA/AHHapj4m8Wap4z13w/okGlxRaaYmFzdK5G1lztwp5JPfsBVn4WwTQaPrCzRSRltYumAdSuQX4Iz2pnhOCZPih42leGRY5GtdjspAbEZzg96F09BdH6/qT3mreM7q+vI7G30vSrOz+U3Oqbj9pOOXQKRtQe5NZumfFISeAdR1++ske50+6Nk0drLujuZcqAY2/uksPX8a5pY9LHiXXz480fU9T1H7W39mxG3lmjeDJ2LEF+Ue+f8AGqGjeH9V1P4a+KLS20eW01CHW/tsOntHs4UowRe3QEcU15je56LZaz400/VdNTXdOsriw1BthfTkkLWbkZHmZzlexYYwawpPEln4X+Ifi+7uVaWaRLSO2tY+ZLiUpwij/OK1V8cXviLUNJ0/w3aXcUjSB9SmurN1S2jA+ZCWABYngYrEv/BVv4o+IHi5riCSK7S3tvsF6AQYZAudyH6gZo6iOkvfFer+GfCMOoeILS3l1i8nWG2sLQlRvf7qFiTkju3Sqk3ijxR4auLGfxLHpNzp15Ols76eXVrR3OFLbidy544xXO+IYtW8efDywuLjSJJdX0a/Vr7TmUqZ9mVbb0zuByMU23g8C391p0Xh/wADT3t9LMhlSWGWBbRcjLuzDHB7DOaOodDopPE/izUvHWueHNFi0uOPTlhkFzdq54dc7SFPJJ6HjGK9BiD+UglIMmPmKjAz3xXA+F7eaP4u+NZnhkWJ47TY7KQrYQ5wehr0KhbD6hRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUmASCQMilooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//9k=\" data-image-state=\"image-loaded\"\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eTheta is the included angle between d1 and d2.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003ePhi is the angle of interest and is between d2 and d3.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 21px; text-align: left; transform-origin: 309px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eThe Test method is locate the SMR to capture the mirror reflectance. Record L. Rotate the SMR to be directly viewed by the Tracker. Record d1 and Theta.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eGiven Theta, d1, and d2+d3 determine d2 and Phi.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"font-weight: 700; \"\u003eInput:\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003e [d1, L, Theta] where L=d2+d3 and d1*cos(Theta) \u0026lt; d2\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"font-weight: 700; \"\u003eOutput:\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003e [d2 Phi]\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"font-weight: 700; \"\u003eExamples:\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eInput: [2^.5, 2+2^.5, pi/4]..... Output: [2 pi/4]\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eInput: [2.3994, 4, .2991]..... Output: [3, pi/4 ]\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function [d2 Phi]=solve_mirror(d1,L,Theta)\r\n d2=0;\r\n Phi=pi();\r\nend","test_suite":"%%\r\nd2=2;\r\nPhi=pi/4;\r\nd3=sqrt(2);\r\n\r\nx1=d2-d3*cos(Phi);\r\ny1=d3*sin(Phi);\r\n\r\nTheta=atan(y1/x1);\r\nd1=hypot(x1,y1);\r\n\r\n[od2, oPhi]=solve_mirror(d1,d2+d3,Theta);\r\n\r\nassert(abs(d2-od2)\u003c.001)\r\nassert(abs(Phi-oPhi)\u003c.001)\r\n%%\r\nd2=2;\r\nPhi=1.5*pi/4;\r\nd3=2;\r\n\r\nx1=d2-d3*cos(Phi);\r\ny1=d3*sin(Phi);\r\n\r\nTheta=atan(y1/x1);\r\nd1=hypot(x1,y1);\r\n\r\n[od2, oPhi]=solve_mirror(d1,d2+d3,Theta)\r\n\r\nassert(abs(d2-od2)\u003c.001)\r\nassert(abs(Phi-oPhi)\u003c.001)\r\n%%\r\nd2=3;\r\nPhi=.5*pi/4;\r\nd3=1;\r\n\r\nx1=d2-d3*cos(Phi);\r\ny1=d3*sin(Phi);\r\n\r\nTheta=atan(y1/x1);\r\nd1=hypot(x1,y1);\r\n\r\n[od2, oPhi]=solve_mirror(d1,d2+d3,Theta)\r\n\r\nassert(abs(d2-od2)\u003c.001)\r\nassert(abs(Phi-oPhi)\u003c.001)\r\n%%\r\nd2=3+rand;\r\nPhi=(.5+rand/10)*pi/4;\r\nd3=1+rand;\r\n\r\nx1=d2-d3*cos(Phi);\r\ny1=d3*sin(Phi);\r\n\r\nTheta=atan(y1/x1);\r\nd1=hypot(x1,y1);\r\n\r\n[od2, oPhi]=solve_mirror(d1,d2+d3,Theta)\r\n\r\nassert(abs(d2-od2)\u003c.001)\r\nassert(abs(Phi-oPhi)\u003c.001)\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":3097,"edited_by":26769,"edited_at":"2024-11-19T13:38:39.000Z","deleted_by":null,"deleted_at":null,"solvers_count":35,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":26,"created_at":"2013-06-15T23:44:39.000Z","updated_at":"2026-02-19T10:13:32.000Z","published_at":"2013-06-16T00:28:14.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eDetermine the mirror's distance and relative angle to the LASER Tracker given the distances to a reference SMR (Spherical Mounted Retro-reflector) and the angle to the SMR.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"center\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"288\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"582\\\"/\u003e\u003cw:attr w:name=\\\"verticalAlign\\\" w:val=\\\"baseline\\\"/\u003e\u003cw:attr w:name=\\\"altText\\\" w:val=\\\"\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eTheta is the included angle between d1 and d2.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ePhi is the angle of interest and is between d2 and d3.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe Test method is locate the SMR to capture the mirror reflectance. Record L. Rotate the SMR to be directly viewed by the Tracker. Record d1 and Theta.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven Theta, d1, and d2+d3 determine d2 and Phi.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eInput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e [d1, L, Theta] where L=d2+d3 and d1*cos(Theta) \u0026lt; d2\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eOutput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e [d2 Phi]\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eExamples:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eInput: [2^.5, 2+2^.5, pi/4]..... Output: [2 pi/4]\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eInput: [2.3994, 4, .2991]..... Output: [3, pi/4 ]\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"target\":\"/media/image1.JPEG\",\"relationshipId\":\"rId1\"}]},{\"partUri\":\"/media/image1.JPEG\",\"contentType\":\"image/JPEG\",\"content\":\"data:image/JPEG;base64,/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAEgAkYDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA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Qyy8tLKRzJIeWY/U1eoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACql1ptjesHurK3nZRgGWJXI/MVbpD0pMDzX4XaVptxpGrtNp9pIy6xdKpeBSQA/AHHapj4m8Wap4z13w/okGlxRaaYmFzdK5G1lztwp5JPfsBVn4WwTQaPrCzRSRltYumAdSuQX4Iz2pnhOCZPih42leGRY5GtdjspAbEZzg96F09BdH6/qT3mreM7q+vI7G30vSrOz+U3Oqbj9pOOXQKRtQe5NZumfFISeAdR1++ske50+6Nk0drLujuZcqAY2/uksPX8a5pY9LHiXXz480fU9T1H7W39mxG3lmjeDJ2LEF+Ue+f8AGqGjeH9V1P4a+KLS20eW01CHW/tsOntHs4UowRe3QEcU15je56LZaz400/VdNTXdOsriw1BthfTkkLWbkZHmZzlexYYwawpPEln4X+Ifi+7uVaWaRLSO2tY+ZLiUpwij/OK1V8cXviLUNJ0/w3aXcUjSB9SmurN1S2jA+ZCWABYngYrEv/BVv4o+IHi5riCSK7S3tvsF6AQYZAudyH6gZo6iOkvfFer+GfCMOoeILS3l1i8nWG2sLQlRvf7qFiTkju3Sqk3ijxR4auLGfxLHpNzp15Ols76eXVrR3OFLbidy544xXO+IYtW8efDywuLjSJJdX0a/Vr7TmUqZ9mVbb0zuByMU23g8C391p0Xh/wADT3t9LMhlSWGWBbRcjLuzDHB7DOaOodDopPE/izUvHWueHNFi0uOPTlhkFzdq54dc7SFPJJ6HjGK9BiD+UglIMmPmKjAz3xXA+F7eaP4u+NZnhkWJ47TY7KQrYQ5wehr0KhbD6hRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUmASCQMilooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//9k=\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":2497,"title":"Distance between two GPS Coordinates","description":"A problem that arises when performing geographically weighted regression is determining the distance between GPS coordinates. GIS (geographical information system) data is usually reported as a function of latitude and longitude.\r\nA common form of GIS data is a CSV file of latitude, longitude, z triples, where z is some quantity that varies with space.\r\nAs a prelude to interpolation, the distance between a given point and every other given point in an area needs to be calculated.\r\nGiven a set of GPS coordinates, return the distance (in miles) between each point and every point around it using the haversine formula ( http://en.wikipedia.org/wiki/Haversine_formula ) and taking the radius of Earth to be 3959 miles.\r\nSee Test Suite for Examples","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.4333px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 204px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 102px; transform-origin: 407px 102px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 368.5px 8px; transform-origin: 368.5px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eA problem that arises when performing geographically weighted regression is determining the distance between GPS coordinates. GIS (geographical information system) data is usually reported as a function of latitude and longitude.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 373.5px 8px; transform-origin: 373.5px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eA common form of GIS data is a CSV file of latitude, longitude, z triples, where z is some quantity that varies with space.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 366.5px 8px; transform-origin: 366.5px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eAs a prelude to interpolation, the distance between a given point and every other given point in an area needs to be calculated.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 371px 8px; transform-origin: 371px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eGiven a set of GPS coordinates, return the distance (in miles) between each point and every point around it using the haversine formula (\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 2px 8px; transform-origin: 2px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e \u003c/span\u003e\u003c/span\u003e\u003ca target='_blank' href = \"/#null\"\u003e\u003cspan style=\"\"\u003e\u003cspan style=\"\"\u003ehttp://en.wikipedia.org/wiki/Haversine_formula\u003c/span\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 156px 8px; transform-origin: 156px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e ) and taking the radius of Earth to be 3959 miles.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 88px 8px; transform-origin: 88px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eSee Test Suite for Examples\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function dist = procGPS(coords)\r\n\r\nend","test_suite":"%%\r\ncoords = [\r\n47.7891\t-103.074\r\n47.7885\t-103.051\r\n47.7598\t-103.055\r\n47.76\t-103.055\r\n47.761\t-103.055];\r\ndist_correct = [\r\n   0.00000   1.06856   2.20846   2.19580   2.13270\r\n   1.06856   0.00000   1.99178   1.97802   1.90924\r\n   2.20846   1.99178   0.00000   0.01382   0.08292\r\n   2.19580   1.97802   0.01382   0.00000   0.06910\r\n   2.13270   1.90924   0.08292   0.06910   0.00000];\r\nassert(abs(sum(sum((procGPS(coords)-dist_correct))))\u003c0.005*max(max(dist_correct)))\r\n\r\n%%\r\ncoords = [\r\n48.9803\t-103.808\r\n48.98031 -103.808\r\n48.9806\t-103.765\r\n48.9806\t-103.764\r\n48.9534\t-103.743\r\n48.9809\t-103.785\r\n48.9822\t-103.802\r\n48.2269\t-102.295\r\n48.2559\t-102.337\r\n48.2556\t-102.311\r\n48.2557\t-102.36\r\n48.2557\t-102.359\r\n48.9818\t-103.231\r\n48.8639\t-103.507\r\n48.8804\t-103.51\r\n48.8648\t-103.529\r\n48.7935\t-103.401\r\n48.8379\t-103.715\r\n48.63282 -103.492268];\r\n\r\ndist_correct = [\r\n0\t0.000690976\t1.950155232\t1.995502612\t3.485510848\t1.043867842\t0.302111766\t86.53754762\t83.78510566\t84.75282145\t82.9534702\t82.98989215\t26.16671135\t15.85736704\t15.18721355\t14.97174021\t22.55114901\t10.70767068\t27.98081693\r\n0.000690976\t0\t1.950147814\t1.995495354\t3.485879124\t1.043840523\t0.301812113\t86.53795777\t83.78551307\t84.75322419\t82.95388198\t82.99030374\t26.16670599\t15.85771634\t15.18752642\t14.97210747\t22.55154299\t10.70830547\t27.98140911\r\n1.950155232\t1.950147814\t0\t0.045349749\t2.12797696\t0.907229104\t1.681552044\t84.98895345\t82.23092177\t83.18867303\t81.40875472\t81.44476589\t24.21656659\t14.22106846\t13.48832542\t13.37289322\t20.99166378\t10.11831281\t27.04659437\r\n1.995502612\t1.995495354\t0.045349749\t0\t2.107084218\t0.95256744\t1.726805519\t84.95285272\t82.19469683\t83.15221287\t81.37275326\t81.40875472\t24.17121793\t14.18369356\t13.44938704\t13.33654253\t20.95588696\t10.10821786\t27.0257419\r\n3.485510848\t3.485879124\t2.12797696\t2.107084218\t0\t2.690817215\t3.335092424\t83.06183212\t80.30813598\t81.2738957\t79.47857211\t79.5149\t23.3078386\t12.37415418\t11.72088759\t11.48623566\t19.06975001\t8.0814959\t24.91872689\r\n1.043867842\t1.043840523\t0.907229104\t0.95256744\t2.690817215\t0\t0.776146592\t85.72532328\t82.96973548\t83.93198388\t82.14329292\t82.17948968\t25.12340423\t14.98902476\t14.28513822\t14.12265973\t21.72709198\t10.37975791\t27.49426357\r\n0.302111766\t0.301812113\t1.681552044\t1.726805519\t3.335092424\t0.776146592\t0\t86.39692438\t83.64318272\t84.6086705\t82.81365124\t82.8499822\t25.89393315\t15.69097514\t15.00598099\t14.81325771\t22.40402258\t10.72506046\t27.95475568\r\n86.53754762\t86.53795777\t84.98895345\t84.95285272\t83.06183212\t85.72532328\t86.39692438\t0\t2.784056299\t2.115378101\t3.592699243\t3.55447642\t67.45150094\t70.78812687\t71.60197135\t71.61685609\t63.99904083\t77.48346607\t61.64286707\r\n83.78510566\t83.78551307\t82.23092177\t82.19469683\t80.30813598\t82.96973548\t83.64318272\t2.784056299\t0\t1.196326277\t1.058218953\t1.012217459\t64.67828567\t68.02660818\t68.83652677\t68.85826762\t61.24275477\t74.76787565\t59.00989918\r\n84.75282145\t84.75322419\t83.18867303\t83.15221287\t81.2738957\t83.93198388\t84.6086705\t2.115378101\t1.196326277\t0\t2.254291389\t2.20828588\t65.45050761\t68.97840161\t69.77964632\t69.81586121\t62.20537972\t75.78431266\t60.09066956\r\n82.9534702\t82.95388198\t81.40875472\t81.37275326\t79.47857211\t82.14329292\t82.81365124\t3.592699243\t1.058218953\t2.254291389\t0\t0.046005686\t64.03108715\t67.21123856\t68.02924605\t68.03734456\t60.41790968\t73.89077428\t58.07210156\r\n82.98989215\t82.99030374\t81.44476589\t81.40875472\t79.5149\t82.17948968\t82.8499822\t3.55447642\t1.012217459\t2.20828588\t0.046005686\t0\t64.05947669\t67.24693201\t68.06459108\t68.07327999\t60.45399813\t73.92914571\t58.11306589\r\n26.16671135\t26.16670599\t24.21656659\t24.17121793\t23.3078386\t25.12340423\t25.89393315\t67.45150094\t64.67828567\t65.45050761\t64.03108715\t64.05947669\t0\t14.94634989\t14.47399026\t15.76107662\t15.13093723\t24.12471833\t26.88548218\r\n15.85736704\t15.85771634\t14.22106846\t14.18369356\t12.37415418\t14.98902476\t15.69097514\t70.78812687\t68.02660818\t68.97840161\t67.21123856\t67.24693201\t14.94634989\t0\t1.148233919\t1.001951244\t6.849226939\t9.626393279\t15.9811711\r\n15.18721355\t15.18752642\t13.48832542\t13.44938704\t11.72088759\t14.28513822\t15.00598099\t71.60197135\t68.83652677\t69.77964632\t68.02924605\t68.06459108\t14.47399026\t1.148233919\t0\t1.381147146\t7.786547077\t9.771067867\t17.1262391\r\n14.97174021\t14.97210747\t13.37289322\t13.33654253\t11.48623566\t14.12265973\t14.81325771\t71.61685609\t68.85826762\t69.81586121\t68.03734456\t68.07327999\t15.76107662\t1.001951244\t1.381147146\t0\t7.627064455\t8.658757412\t16.11638162\r\n22.55114901\t22.55154299\t20.99166378\t20.95588696\t19.06975001\t21.72709198\t22.40402258\t63.99904083\t61.24275477\t62.20537972\t60.41790968\t60.45399813\t15.13093723\t6.849226939\t7.786547077\t7.627064455\t0\t14.61255215\t11.85676168\r\n10.70767068\t10.70830547\t10.11831281\t10.10821786\t8.0814959\t10.37975791\t10.72506046\t77.48346607\t74.76787565\t75.78431266\t73.89077428\t73.92914571\t24.12471833\t9.626393279\t9.771067867\t8.658757412\t14.61255215\t0\t17.43086334\r\n27.98081693\t27.98140911\t27.04659437\t27.0257419\t24.91872689\t27.49426357\t27.95475568\t61.64286707\t59.00989918\t60.09066956\t58.07210156\t58.11306589\t26.88548218\t15.9811711\t17.1262391\t16.11638162\t11.85676168\t17.43086334\t0];\r\n\r\nassert(abs(sum(sum((procGPS(coords)-dist_correct))))\u003c0.005*max(max(dist_correct)))","published":true,"deleted":false,"likes_count":2,"comments_count":4,"created_by":379,"edited_by":223089,"edited_at":"2022-05-20T18:56:16.000Z","deleted_by":null,"deleted_at":null,"solvers_count":38,"test_suite_updated_at":"2022-05-20T18:56:16.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-08-09T13:16:53.000Z","updated_at":"2026-04-01T15:40:43.000Z","published_at":"2014-08-09T14:01:42.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA problem that arises when performing geographically weighted regression is determining the distance between GPS coordinates. GIS (geographical information system) data is usually reported as a function of latitude and longitude.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA common form of GIS data is a CSV file of latitude, longitude, z triples, where z is some quantity that varies with space.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eAs a prelude to interpolation, the distance between a given point and every other given point in an area needs to be calculated.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven a set of GPS coordinates, return the distance (in miles) between each point and every point around it using the haversine formula (\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"\\\"\u003e\u003cw:r\u003e\u003cw:t\u003ehttp://en.wikipedia.org/wiki/Haversine_formula\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e ) and taking the radius of Earth to be 3959 miles.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eSee Test Suite for Examples\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":1720,"title":"Do the line-segments intersect?","description":"You are given two line segments. Do they cross?\r\nConsider one segment as (x1,y1) to (x2,y2), the other segment as (x3,y3) to (x4,y4). You are given a = [x1 y1; x2 y2]; b = [x3 y3; x4 y4]. Return tf=true if a and b intersect or tf=false if a and b do not touch.\r\nWhen lines do intersect they will do so cleanly at exactly one non-endpoint. That is, they will not nest, overlap, or \"kiss\" at the endpoints.\r\nExamples\r\n a = [0,0; 1,1];\r\n b = [0,1; 1,0];\r\n tf = true\r\n\r\n a = [0,0; 1,0];\r\n b = [0,1; 1,1];\r\n tf = false","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.4333px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 306.033px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 153.017px; transform-origin: 407px 153.017px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 153px 8px; transform-origin: 153px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eYou are given two line segments. Do they cross?\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 380.5px 8px; transform-origin: 380.5px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eConsider one segment as (x1,y1) to (x2,y2), the other segment as (x3,y3) to (x4,y4). You are given a = [x1 y1; x2 y2]; b = [x3 y3; x4 y4]. Return tf=true if a and b intersect or tf=false if a and b do not touch.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 382px 8px; transform-origin: 382px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eWhen lines do intersect they will do so cleanly at exactly one non-endpoint. That is, they will not nest, overlap, or \"kiss\" at the endpoints.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 30px 8px; transform-origin: 30px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eExamples\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgb(247, 247, 247); block-size: 143.033px; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; border-end-end-radius: 4px; border-end-start-radius: 4px; border-start-end-radius: 4px; border-start-start-radius: 4px; border-top-left-radius: 4px; border-top-right-radius: 4px; margin-block-end: 10px; margin-block-start: 10px; margin-bottom: 10px; margin-inline-end: 3px; margin-inline-start: 3px; margin-left: 3px; margin-right: 3px; margin-top: 10px; perspective-origin: 404px 71.5167px; transform-origin: 404px 71.5167px; margin-left: 3px; margin-top: 10px; margin-bottom: 10px; margin-right: 3px; \"\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 64px 8.5px; tab-size: 4; transform-origin: 64px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e a = [0,0; 1,1];\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 64px 8.5px; tab-size: 4; transform-origin: 64px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e b = [0,1; 1,0];\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 40px 8.5px; tab-size: 4; transform-origin: 40px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e tf = true\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 0px 8.5px; tab-size: 4; transform-origin: 0px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 64px 8.5px; tab-size: 4; transform-origin: 64px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e a = [0,0; 1,0];\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 64px 8.5px; tab-size: 4; transform-origin: 64px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e b = [0,1; 1,1];\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 44px 8.5px; tab-size: 4; transform-origin: 44px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e tf = false\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function tf = intersecting(a,b)\r\n  tf = [];\r\nend","test_suite":"%%\r\na = [0,0; 1,1];\r\nb = [0,1; 1,0];\r\ntf_correct = true;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [0,0; 1,1];\r\nb = [1,0; 0,1];\r\ntf_correct = true;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [0,0; 1,0];\r\nb = [0,1; 1,1];\r\ntf_correct = false;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [0,0; 1,0];\r\nb = [2,0; 3,0];\r\ntf_correct = false;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [4 3;6 8];\r\nb = [3 7;6 9];\r\ntf_correct = false;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [6 2;6 9];\r\nb = [7 6;4 5];\r\ntf_correct = true;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [3 -3;-2 -2];\r\nb = [-1 1;0 -4];\r\ntf_correct = true;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n","published":true,"deleted":false,"likes_count":2,"comments_count":5,"created_by":7,"edited_by":223089,"edited_at":"2022-07-11T06:33:54.000Z","deleted_by":null,"deleted_at":null,"solvers_count":77,"test_suite_updated_at":"2022-07-11T06:33:54.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2013-07-16T20:37:41.000Z","updated_at":"2026-02-19T10:15:21.000Z","published_at":"2013-07-16T20:57:36.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eYou are given two line segments. Do they cross?\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eConsider one segment as (x1,y1) to (x2,y2), the other segment as (x3,y3) to (x4,y4). You are given a = [x1 y1; x2 y2]; b = [x3 y3; x4 y4]. Return tf=true if a and b intersect or tf=false if a and b do not touch.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eWhen lines do intersect they will do so cleanly at exactly one non-endpoint. That is, they will not nest, overlap, or \\\"kiss\\\" at the endpoints.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eExamples\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[ a = [0,0; 1,1];\\n b = [0,1; 1,0];\\n tf = true\\n\\n a = [0,0; 1,0];\\n b = [0,1; 1,1];\\n tf = false]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":42306,"title":"Esoteric Trigonometry","description":"From Wikipedia: \"All of the trigonometric functions of an angle θ can be constructed geometrically in terms of a unit circle centered at O. Many of these terms are no longer in common use.\"\r\n\r\n\u003c\u003chttps://i.imgur.com/vVIFB1x.png\u003e\u003e\r\n\r\nNonetheless, suppose you do need to use one of these esoteric trigonometric functions that is not built into Matlab. Write a function that takes an angle as the first input (radians) and the trigonometric function name as the second input (string, function name will be completely spelled out). Make sure your function covers both the esoteric and commonly used functions; then it's a more useful tool. In particular, include sine, cosine, tangent, cosecant, secant, cotangent, versine, vercosine, coversine, covercosine, haversine, havercosine, hacoversine, hacovercosine, exsecant, excosecant, and chord. Formulas for each function are available \u003chttp://en.wikipedia.org/wiki/List_of_trigonometric_identities here\u003e.","description_html":"\u003cp\u003eFrom Wikipedia: \"All of the trigonometric functions of an angle θ can be constructed geometrically in terms of a unit circle centered at O. Many of these terms are no longer in common use.\"\u003c/p\u003e\u003cimg src = \"https://i.imgur.com/vVIFB1x.png\"\u003e\u003cp\u003eNonetheless, suppose you do need to use one of these esoteric trigonometric functions that is not built into Matlab. Write a function that takes an angle as the first input (radians) and the trigonometric function name as the second input (string, function name will be completely spelled out). Make sure your function covers both the esoteric and commonly used functions; then it's a more useful tool. In particular, include sine, cosine, tangent, cosecant, secant, cotangent, versine, vercosine, coversine, covercosine, haversine, havercosine, hacoversine, hacovercosine, exsecant, excosecant, and chord. Formulas for each function are available \u003ca href = \"http://en.wikipedia.org/wiki/List_of_trigonometric_identities\"\u003ehere\u003c/a\u003e.\u003c/p\u003e","function_template":"function y = trig_func_tool(theta,f_name)\r\n \r\nend","test_suite":"%%\r\ntheta = pi/3;\r\nf_name = 'sine';\r\nassert(isequal(trig_func_tool(theta,f_name),sin(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'cosine';\r\nassert(isequal(trig_func_tool(theta,f_name),cos(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'tangent';\r\nassert(isequal(trig_func_tool(theta,f_name),tan(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'cosecant';\r\nassert(isequal(trig_func_tool(theta,f_name),csc(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'secant';\r\nassert(isequal(trig_func_tool(theta,f_name),sec(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'cotangent';\r\nassert(isequal(trig_func_tool(theta,f_name),cot(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'versine';\r\nassert(isequal(trig_func_tool(theta,f_name),1-cos(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'vercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),1+cos(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'coversine';\r\nassert(isequal(trig_func_tool(theta,f_name),1-sin(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'covercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),1+sin(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'haversine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1-cos(theta))/2))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'havercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1+cos(theta))/2))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'hacoversine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1-sin(theta))/2))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'hacovercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1+sin(theta))/2))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'exsecant';\r\nassert(isequal(trig_func_tool(theta,f_name),sec(theta)-1))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'excosecant';\r\nassert(isequal(trig_func_tool(theta,f_name),csc(theta)-1))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'chord';\r\nassert(isequal(trig_func_tool(theta,f_name),2*sin(theta/2)))\r\n\r\n%%\r\ntheta = pi/5;\r\nf_name = 'sine';\r\nassert(isequal(trig_func_tool(theta,f_name),sin(theta)))\r\n\r\n%%\r\ntheta = pi/10;\r\nf_name = 'cosine';\r\nassert(isequal(trig_func_tool(theta,f_name),cos(theta)))\r\n\r\n%%\r\ntheta = pi/2.5;\r\nf_name = 'tangent';\r\nassert(isequal(trig_func_tool(theta,f_name),tan(theta)))\r\n\r\n%%\r\ntheta = 2*pi/3;\r\nf_name = 'cosecant';\r\nassert(isequal(trig_func_tool(theta,f_name),csc(theta)))\r\n\r\n%%\r\ntheta = pi/7;\r\nf_name = 'secant';\r\nassert(isequal(trig_func_tool(theta,f_name),sec(theta)))\r\n\r\n%%\r\ntheta = pi/13;\r\nf_name = 'cotangent';\r\nassert(isequal(trig_func_tool(theta,f_name),cot(theta)))\r\n\r\n%%\r\ntheta = pi/31;\r\nf_name = 'versine';\r\nassert(isequal(trig_func_tool(theta,f_name),1-cos(theta)))\r\n\r\n%%\r\ntheta = pi/1.3;\r\nf_name = 'vercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),1+cos(theta)))\r\n\r\n%%\r\ntheta = pi/3.3;\r\nf_name = 'coversine';\r\nassert(isequal(trig_func_tool(theta,f_name),1-sin(theta)))\r\n\r\n%%\r\ntheta = pi/33;\r\nf_name = 'covercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),1+sin(theta)))\r\n\r\n%%\r\ntheta = pi/0.7;\r\nf_name = 'haversine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1-cos(theta))/2))\r\n\r\n%%\r\ntheta = pi/0.3;\r\nf_name = 'havercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1+cos(theta))/2))\r\n\r\n%%\r\ntheta = pi/13;\r\nf_name = 'hacoversine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1-sin(theta))/2))\r\n\r\n%%\r\ntheta = pi/31;\r\nf_name = 'hacovercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1+sin(theta))/2))\r\n\r\n%%\r\ntheta = pi/30;\r\nf_name = 'exsecant';\r\nassert(isequal(trig_func_tool(theta,f_name),sec(theta)-1))\r\n\r\n%%\r\ntheta = pi/1.3;\r\nf_name = 'excosecant';\r\nassert(isequal(trig_func_tool(theta,f_name),csc(theta)-1))\r\n\r\n%%\r\ntheta = pi/13;\r\nf_name = 'chord';\r\nassert(isequal(trig_func_tool(theta,f_name),2*sin(theta/2)))","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":26769,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":41,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":26,"created_at":"2015-05-12T17:53:15.000Z","updated_at":"2026-02-19T10:17:18.000Z","published_at":"2015-05-12T17:53:15.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.JPEG\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFrom Wikipedia: \\\"All of the trigonometric functions of an angle θ can be constructed geometrically in terms of a unit circle centered at O. Many of these terms are no longer in common use.\\\"\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eNonetheless, suppose you do need to use one of these esoteric trigonometric functions that is not built into Matlab. Write a function that takes an angle as the first input (radians) and the trigonometric function name as the second input (string, function name will be completely spelled out). Make sure your function covers both the esoteric and commonly used functions; then it's a more useful tool. In particular, include sine, cosine, tangent, cosecant, secant, cotangent, versine, vercosine, coversine, covercosine, haversine, havercosine, hacoversine, hacovercosine, exsecant, excosecant, and chord. Formulas for each function are available\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://en.wikipedia.org/wiki/List_of_trigonometric_identities\\\"\u003e\u003cw:r\u003e\u003cw:t\u003ehere\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.JPEG\",\"contentType\":\"image/JPEG\",\"content\":\"data:image/JPEG;base64,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JuIzJvBP91gR/MmvHzfWEE/h5lc9HLdJza+KzsdxDEkESRxqFRAFUDsBxUuMimI6yIGUgqRkEHNPr1opWXLsee7313KkNnb29xLNFEqSS43kd8f/AK6zdU8S2mmuYeZpx1ROi+xP+TUniLUzpumM6HE0h2J7ep/KsHwzoKXa/b71PMRmPlo3RueWPr3GDXl4nEVFVWGwytLr5HdQowdN16702S7luDxtA8mJrWSNT/ErBv6CujtbuC8gE1vKJEbuDUdxpdlcw+VLaxlcYGFwR9PSuQ0p30TxO9hvJhd9hB755U/X/E0vbYnCziq75oydr+Y/ZUcRCTpLlktbd0d52oyBVa5uobS3aedwkafeY9q4/wARas19eW1rp8pYAhg0bYy54HP4/r7V14rGQw8bvV6aHPh8NOvKy27nc0tV7WN4baJJZC7qoDOerHHWp66ou6TOdqzsLRRRVAFFFFABWV4gvbvTdA1C8sLOS8u4YGeGCNdzSPg7RgckZxnHOM4ya1aKAPmr4IeFLvWPHF74i1eKUtpzsT56kM1y+ckg9wCSe4JU19K0wKAWIAyxyfc4/wAMU+gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAM/VZ/Ktdg+85x+Hf8Aw/Gqukz7ZWiPRhkfUf8A1v5VX1Cbz7tgD8q/KP6/rVeNjFIrr1U5FRfU9CFH9zbqzqSccmvHPEfjHXfFfiV/DfhN2ihRir3EbbWfBwzF+qqDwCOT6nIFel+IL1rbwpqd7A2Hjs5ZIz6EISP5V4N4C13V9BlvZ9J0OTU3lCI7JG7mMAk9VBxkn8dvHSsK87NRvueHiptSUGdePgvqEyefceJP9LPJ/cMwz/vFgfxxmqemeI/EXw78SQ6P4huHutNlIxI7Fwqk43ox5wD1U9AOByCdX/hZHjP/AKEq5/78Tf4V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ACiiigAooooAKKKKACiiigAooooAKKKKAEpOB7Uua4T4ozzQeH7VoZXjY3aglWIONj8ce+KqMbuxjXqqlTc30O6BzyKWuX+H8sk3gyyklkZ3JkyzkknDsOprqKUlZ2KpT9pBT7i0UUUjQK8J+Jnwn1vWviBa6z4Zjjj+1BZLiZ5QiwSoQA57nI2nABOVJ717tRQBWsxcLZQC7ZGuRGomaMEKXx8xAPbOcVZrOuda0y01O10241C2ivbokQ27SDzJMAnhc5xwefoOpFaNABRRRQAUUUUAFFFFABRRRQAVyXxE/wCRcj/6+V/9BautqKSKOVdskaOvXDAEfrQBzvgL/kVof+uj/wA66eo440iQJGioo7KMAfgKkoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK5X4ieIB4Z8BatqSvtnWExQEcHzH+VSPoSD9AaAPnuUj4i/H7A/e2kl+FHcGCHqfYFUJ+re9fV1fO/7OOgebf6t4hkT5YkW0hJ6Fmwz/iAF/wC+q+iKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAaTj0pa8r+Kd1cW+qWAhnliBhYkI5UHnvivRNGYtolgzHLG3jJP8AwEVcoWin3OaniFOrKnb4TRoooqDpCiiigAooooAKKKKACiiigAooooAKKKKACvLvjv4d/tn4fPfxJuuNLkFwMDkxn5XH0wQx/wB2vUagu7WG+sp7O5QSQTxtHIh6MrDBB+oJoA8l/Z88RDUfB9xokr5m02bKA/8APKTLDH0YP9MivYa+U/AV3N8N/jO+k3jlYHnbT5mPG5WI8t/YEhDnsCa+rKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAErC8UeHI/EunxWkk7wBJRLuVQSSARjn6/pW7RTTs7oicIzjyy2MrQNHTQdGg05JWlWIth2GCcsT0H1rVpD+lLmh3buOMVGKitkLRRRSKCiiigD5h+NWh3XhL4iW3ibTmaNL1xcxyD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KKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArjfiB8P9O8eaMbe4Ahv4QTa3YXLRn0Pcqe4/Ec12VFAHyf4Y8U+Ifg34tn0jVreRrFnH2m1zkMOgliJwM4HXgEcHBAI+ntF1rT/ABDpUGp6XcpcWkwyroenqCOxHQg1ieOvAWl+O9INrer5V3Hk214i5eFv0yp4yp69sEA1886VrHir4J+LZLK8gL2rnMtuWPlXKdBJG3Y46HGR0I4IoA+s6Kw/DPinSvFujR6npFwJYW4dDw8T4BKsOxH5HqCQQTuUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABXLfEDwsnjHwZf6VtH2kr5lsxx8sq5K8npnlSfRjXU0UAfN/7P3ieTTPEF54UvCypd5lhRgQUmQfMuOxKjn/cA719IVl6foGk6VdXN3Y6dbW9zdSNJPNHGA8jMcnLdSCecZxWpQAVyXxE/5FyP/r5X/wBBautrkviJ/wAi5H/18r/6C1AE3gL/AJFaH/ro/wDOunrmPAX/ACK0P/XR/wCddPQAUUUUAFFFFABRRRQAUUVyvjfx1pPgbSfteoSb7iTIt7RDh5mHp6KDjLHgD1JAIBc8VeKtL8HaLJqeqz7IxxHGvLytjhVHc/oOpIFfNU03in44eNQiL5VrH91eTDZRE9SeMsfXqxGBgDgs7LxZ8bvGDXEz7LWMgPLg+TZxnnaozyx9M5J5JABI+lfC3hXS/B+ix6XpMAjiX5nkbl5XxyzHuT+QHAAAxQAzwj4R0zwXokWmaZFgD5ppmHzzPjlmI/QdAOK6GiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArn/ABZ4R0rxnoz6bqsG5eWimTiSFum5T/ToehFdBRQB8mX2m+Lvgl4rW6t5S9rK22OcA+RdoOdrrnhsdicjkgnqfoHwL8RdH8d2HmWbCC/jXM9lIw3p7j+8ue49sgHiui1bSLDXdNm07VLWO5tJhh45BkH3HcEdQRyDyK+bPG/wx134c6mPEPhq4uZNOhbek8X+ttfZ8DlccbuhGQQO4B9R0V5D8N/jVZeJVh0rX3jstWOFSbO2K4PbB/hY+h4J6HkAevUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAGbrc9/aaHfXGl26XF9FA7wQyEgO4BIXjnn9T3HWvJvhB8VNT8WeItQ0rXpozPMvn2YjQIq7fvRgdTxhhkk8Nz0r2uvlX4j6VdfDf4sQ61pibIJpRfWwHC5z+8j47ZJGB0VgKAPqquS+In/IuR/9fK/+gtW7o+qW2uaPZ6pZtutruJZYz3AIzg+hHQjsRUet6NDrtiLSeV41Dh8pjOQCO496AMzwF/yK0P8A10f+ddPWdo2kxaLpy2cMjyIrFgz4zknPYCtGgAooooAKKKKACimO6opZiAoGSScV4b8SPjnHaedpHhKRJrjlZdRHKIe4j7Mf9rp6ZzkAHY/Eb4q6Z4GtntIDHea2y/u7YNlYsjIaQjoO4HU+wOR4t4V8F+JPi94gk1vWrqZNPL4mvWGCwH/LOJcY4/Ic9Twdv4d/Bm98RTrr/i/z47OVvNW3kY+ddEnJZznKqTzz8x56DBP0Va2sFjaxWtrDHDbxKFjijUKqgdAAOAKAKmh6Fp3hzSYdN0q1S3tYhwqjknuzHqSe5PJrToooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigApjKHUqwBBGCCOtPooA8L+I3wKivjNq3hJEguDl5NO4WNz6xnop/2TwexGMHmfAvxk1fwfcDQvFcFzc2cDeWWkBFxa44wQeWA9DyB0OABX01XGeOPhtoXjm2JvIvs+oKu2K+iUb19A395fY9MnBBOaAOi0nWNP17TotQ0u8iu7STlJIzke4PcEdweR0IFaNfJt3pvjn4La39pgkIs5GwJowXtrkdldeMHGeDgjnB717R4D+MeheL/ACrK6ZdN1ZsDyJW+SU/9M26E/wCycHnjOM0AelUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAV518ZfCX/CUeBbiWCPdf6bm6gwOWAHzr68rk4HUqK9FpCARg96APC/2efFvn6feeFrmTL2+bm0z3jJw6j6MQcf7R9K9qvb+102ATXk6wxlgoZumTkgfoa8L0/4U+JdB+MR1LQIoIdHguROk00gVTE/34gBliQCyjjHAJIzXqXxE/5FyP8A6+V/9BagDpLO9ttQtxcWkyyxEkBl6EjrVmuY8Bf8itD/ANdH/nXT0AFFFISAMngUALWL4j8UaR4U0x7/AFm8S3hGdinl5D/dRRyx+nTqcDmvPPHvxx0nw8JbDQTFqmpDKmQHMER9yPvkeg49SCMV5doPgvxl8XdX/tfVbqVLJjhr65U7cZ+7CgwCAc9MKDnJz1AJ/FvxJ8S/E7UhoOgWlxDYTNtS0gOZJx6yMOAAOSMhR3JxmvSvhx8FbDw0YdU18RX2rD5kjxmG3PbAP3mHqeAegyM13HhLwRongrTha6TbYkbHnXMmDLMR/ebA49AMAdhyc9LQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQBXvLO3v7SW1vLeO4t5VKvFKoZWB6gg8EV4V47+AKuZNQ8Htsblm0+Z+D7Rsen0Y49x0r32igD5e8LfF3xT4FvP7G8TW1xeWsJ2NDcgrcQj/ZY9RjkBsjAGCBXv8A4X8a6D4xtDPo1+kzqAZLdvllj/3l6+2RkHsTR4o8F6D4xtPs+s2KTMoIjnX5ZY/91hyOecHIPcGvA/E/wY8U+D7z+1fC1zPfQQkujWxKXMQ/3Qfm44yvJ9AKAPp6ivnPwh8f9QsHWw8W2jXSKdpuoUCyoQcHenAb8MEY6E17noHifRPFFn9q0XUYbuMAbghwyZ7MpwVP1AoA2aKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArhfH2q6fLp50yO+t3vo5Vke2WQGRFwRkqDkDJHJ9a7hlDAqehGCK+PvEemz/AA5+J11bsXNssvmRs2SZLd+RknqR0J7spoA+nPAX/IrQ/wDXR/5109ea6P458O+E/BcFxqupRRs7M0cCENLICeNqjkjtngDuRXmHin45eIfElx/ZnhW0lsIpW2I0Y8y6lz0AxnaT6Lk+hoA9q8YfEbw74Kgb+0bsSXmMpZQENK2ehIz8o9yQPTNeB6/8QfGnxT1A6Po1rNDZyHAsrMk7l6Zlk4yOec4Xpxxmtrwh8BtW1mYal4uupLOKQ72gVt1xKTySzHIXPvk9cgGvetC8OaR4Z08WOj2EVpAMZCDlyO7MeWPuSTQB5b4F+A2n6X5V/wCKGjv7wYZbNP8AURn/AGj1c+xwOvB617JHGkUaxxoqogCqqjAAHAAHpUtFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAHHeLvhp4a8ZKz6hZeVeEcXlthJR9TjDD2YH2xXh+vfB3xl4Kvf7T8NXU19FHkrNZEx3CD3TOT/wEnPcCvqGigD5t8L/ALQGsaU4s/FNib5EO1pogIp1wcEMvCsRjGPlPqTXtfhnx74a8XRj+yNTiknIybaQ7JV/4CcEgeoyPejxP4B8NeL4z/a2mRPPjAuoxsmXHA+YcnHocj2rxbxL+z1q1g5uvDGoreop3JBORFMvphuFY+520AfSFFfK1h8TPiJ8P7pbDWo5541P+o1SNi2B1KyZBI9Dkj2r0/w58f8AwvqoWPVUn0ic9TIPNiJ9AyjP5qB70AetUVS0/VLDVrVbrTry3u7dukkEgdfpkE1doAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKzdW17SdBtvtGralbWUeODPKF3ewBOSfYUAaVFeM+I/2htBsA8OhWk+pzDgSuDFD+o3HHpgZ9a83ufGHxL+JszWmmrdG2Y7Wh09DFEoPZ5M9PZmxQB754p+J/hXwkrpfaik12uR9ktcSS59CAcKf94ivnP4g+OJvidrtkLHQzE8IaKBYt0s8oJBwcDnGCQAOMnk13Xhj9nWZylx4n1IRrwTa2Ryx9mkIwPfAPsa9m8PeEdB8K25i0bTILXIw0gBaR/8Aec5Y/QnAoA8B8JfALXNXMd14hmGl2pAPkjD3DDHTHRePUkj0r3fwt4H8PeD7fy9H09I5SMPcP80sn1Y849hge1dLRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAVb7T7PU7Vra/tILq3f70U8YdT9QQRXmHiL4BeFtXLy6Y9xpFw2cCI+ZFn1KNz+AYD2r1migD5av/AIOeP/CVy17oU7XIXpNps5jlA91JBJ9gTS6d8a/Hnhe4Flrlut0U+9HqFu0UwH1GDn3INfUlU7/S9P1W3+z6jY293Cf+WdxEsi/kQRQB5Tov7RHhm9CJqtje6bIfvMAJox+K4Y/9816Jo3jPw1r+3+y9csrl26RLKBJ+KHDD8RXIa18CvBWrbnt7W40yVud1pKdpP+62QB7ACvPdY/Zw1eEs+ja1a3S9QlzG0LfQEbgf0oA+j6K+VRofxh8F4FqusiBPuray/ao8DvsBYAfUCrFp8evG+kSeRqdtZ3LqcOLm2aKT/wAdKgfiKAPqKivCdO/aTsWwNT8PXEXq1tOsmfwYLj6ZP1rqrD48eBbxR5t7dWRPa4tWJ/NNw/WgD0yiuWs/iN4Nv1zb+JtLBPQS3Cxn8mINb1rqVjfDNpe21x/1ylVv5GgC3RRRQAUUUUAFFFFABRRRQAUVRu9Y0ywH+malaW4H/PadUx+ZFYF78TfBOngmfxNpzeohl80/+OZoA62ivLr/AOP3gezB8ie+vj/072xX/wBGFa5XUP2lIQGXTfDkj8cPc3IXH1VVOfzFAHvdJnHNfLdx8bviDr8xt9Ihht3PRLC0Mr4/4Fu/QCoT4N+LfjTH9ojVDA/JGoXPlIP+2ZII/BaAPoXWPiB4T0AMNR1+yjdesSSeZIPqq5b9K871v9ovQ7Xcmi6Xd3zjgSTMIUPuOrH6ECsHSP2bbx9razr0EQB5js4jJkf7zbcfka9E0T4KeCNGKu+mtqEq9JL6TzAfqoAU/iKAPHLv4sfEfxncNaaJHLAG48rS7cswB6EucsPcggfSrOlfAzxn4iuvtniC8Sx38vJdSm4nI7cAkfmwNfS1rZ21jAtvaW8NvCv3Y4UCKPoAMCrFAHmPhz4F+ENE2S3kEmrXK4Ja7PyA+0YwCPZt1ej21tBZ26QW0EcEKDCRxIFVR6AAYFT0UAFFFFABRRRQAV4Q37StoGI/4Rifgkf8fg/+Ir3evj34RWFnqnxR0u0v7SC7tpPP3QzxiRGxE5GVIIOCAenUUAelf8NLWf8A0LE+P+vwf/E1raV+0T4ZvJ1i1GwvtPDHHm4EqL9cYb8ga9B/4QPwh/0Kuh/+C+L/AOJrz34ofCbw5J4T1DV9H0+LT7+xha4/0cbY5EUEspUcDgHBAByBnigD1fT7+01SyhvbG4juLWZd0csTblYexH5fUEVcr55/Zx1u4N7q2gu7NbeULuNSciNgwVsfUMuf92voagAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKq3dhZ6hF5V7ZwXMf9yaMOPyINWqKAOK1H4T+BtSJM3hy1jJ5zbFoMH2CED8MVy99+zv4RuSWtbvVLQnoFlV1H4MpP6167RQB8/3v7NXJNj4m47JPafzYN/SsG6/Z08VxEm21HSZ1HQGSRGP4FCP1r6eooA+WP8AhUfxR03/AI8mkIH/AD7akE/my0f8Ix8a7HhZNfAHZNU3j8hIRX1PRQB8sbPjbb/9DGf+BF/6mj7f8bU2/J4j9v8ARifz+X+dfU9FAHyx9t+Nrj7niT/wHI/pR5HxtuP4vEY/7aFP6ivqeigD5Z/4RH41X4+eTXWB7S6sF/QyCk/4U38TNS/4/WAz/wA/OoB/5Fq+p6KAPmW1/Zx8TyHN1qulQjvsaSQj8NoH61u2f7NMYIN74mZh3SGzA/Usf5V77RQB5NYfs9+DrUhrqXUr0jqJJwqn8FUEfnXVad8L/BGl4Nv4bsWI6GdTOf8Ax8muvooAggtYLWERW0EcMY6JGgUD6AVPRRQAUUUUAFFFFABRRRQAUUUUAFFFFABXxv8ACzWdP0D4ladqeqXC21nD52+VgSF3ROo4AJ5JA6d6+yK+LPh94bsvFnjux0S/knjtrjzdzQMFcbY2YYyCByo6g0AfTf8AwuHwCB/yMcH/AH5l/wDia4L4lfGnQ77w1e6J4cklvrm+jMDz+UyJGjcMAGALEgkDAxznPAB1v+GcvCH/AEEdc/7/AMX/AMarA8Q/AOTSLV9T8H6zffbrYGRIZSBIxHZJEC4b0GOc9RQBqfAXwPqGhWt7r2qW0ltJeIsNtFIpVxGDksQeRk7cA88Z6EV7VXhvwa+Kt/rmoL4a8QTfaLpkLWl02A77Rko3qcAkHqcHOTXuVABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAV8i/BP8A5K/pH0uP/RL19dV8X6BZ+MvC+vw6xpmhakt3AXCF7CRh8ylTwR6E0AfaFQ3FxFa28tzPIscMSF5HY4CqBkkn0Aya+bP+FofF7/oEXH/gob/CqOoz/F/x9F/Z11Yap9lkPzRfZfssTezMQoI46EkcDvQBh/DhmvvjDpMtmrKr37SgAdEAZj/46DmvsOvKvhT8J/8AhCWfVtVljn1iWMoqx8pbqcZAJ6scYJ6AcDqSfVaACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//9k=\"}]}"},{"id":1650,"title":"LASER Tracker - Mirror Distance and Angle","description":"Determine the mirror's distance and relative angle to the LASER Tracker given the distances to a reference SMR (Spherical Mounted Retro-reflector) and the angle to the SMR.\r\n\r\nTheta is the included angle between d1 and d2.\r\nPhi is the angle of interest and is between d2 and d3.\r\nThe Test method is locate the SMR to capture the mirror reflectance. Record L. Rotate the SMR to be directly viewed by the Tracker. Record d1 and Theta.\r\nGiven Theta, d1, and d2+d3 determine d2 and Phi.\r\nInput: [d1, L, Theta] where L=d2+d3 and d1*cos(Theta) \u003c d2\r\nOutput: [d2 Phi]\r\nExamples:\r\nInput: [2^.5, 2+2^.5, pi/4]..... Output: [2 pi/4]\r\nInput: [2.3994, 4, .2991]..... Output: [3, pi/4 ]","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.440001px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 636px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 332px 318px; transform-origin: 332px 318px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 21px; text-align: left; transform-origin: 309px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eDetermine the mirror's distance and relative angle to the LASER Tracker given the distances to a reference SMR (Spherical Mounted Retro-reflector) and the angle to the SMR.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 294px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 147px; text-align: center; transform-origin: 309px 147px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cimg class=\"imageNode\" width=\"582\" height=\"288\" style=\"vertical-align: baseline;width: 582px;height: 288px\" src=\"data:image/JPEG;base64,/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAEgAkYDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA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Qyy8tLKRzJIeWY/U1eoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACql1ptjesHurK3nZRgGWJXI/MVbpD0pMDzX4XaVptxpGrtNp9pIy6xdKpeBSQA/AHHapj4m8Wap4z13w/okGlxRaaYmFzdK5G1lztwp5JPfsBVn4WwTQaPrCzRSRltYumAdSuQX4Iz2pnhOCZPih42leGRY5GtdjspAbEZzg96F09BdH6/qT3mreM7q+vI7G30vSrOz+U3Oqbj9pOOXQKRtQe5NZumfFISeAdR1++ske50+6Nk0drLujuZcqAY2/uksPX8a5pY9LHiXXz480fU9T1H7W39mxG3lmjeDJ2LEF+Ue+f8AGqGjeH9V1P4a+KLS20eW01CHW/tsOntHs4UowRe3QEcU15je56LZaz400/VdNTXdOsriw1BthfTkkLWbkZHmZzlexYYwawpPEln4X+Ifi+7uVaWaRLSO2tY+ZLiUpwij/OK1V8cXviLUNJ0/w3aXcUjSB9SmurN1S2jA+ZCWABYngYrEv/BVv4o+IHi5riCSK7S3tvsF6AQYZAudyH6gZo6iOkvfFer+GfCMOoeILS3l1i8nWG2sLQlRvf7qFiTkju3Sqk3ijxR4auLGfxLHpNzp15Ols76eXVrR3OFLbidy544xXO+IYtW8efDywuLjSJJdX0a/Vr7TmUqZ9mVbb0zuByMU23g8C391p0Xh/wADT3t9LMhlSWGWBbRcjLuzDHB7DOaOodDopPE/izUvHWueHNFi0uOPTlhkFzdq54dc7SFPJJ6HjGK9BiD+UglIMmPmKjAz3xXA+F7eaP4u+NZnhkWJ47TY7KQrYQ5wehr0KhbD6hRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUmASCQMilooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//9k=\" data-image-state=\"image-loaded\"\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eTheta is the included angle between d1 and d2.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003ePhi is the angle of interest and is between d2 and d3.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 21px; text-align: left; transform-origin: 309px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eThe Test method is locate the SMR to capture the mirror reflectance. Record L. Rotate the SMR to be directly viewed by the Tracker. Record d1 and Theta.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eGiven Theta, d1, and d2+d3 determine d2 and Phi.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"font-weight: 700; \"\u003eInput:\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003e [d1, L, Theta] where L=d2+d3 and d1*cos(Theta) \u0026lt; d2\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"font-weight: 700; \"\u003eOutput:\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003e [d2 Phi]\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"font-weight: 700; \"\u003eExamples:\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eInput: [2^.5, 2+2^.5, pi/4]..... Output: [2 pi/4]\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 309px 10.5px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eInput: [2.3994, 4, .2991]..... Output: [3, pi/4 ]\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function [d2 Phi]=solve_mirror(d1,L,Theta)\r\n d2=0;\r\n Phi=pi();\r\nend","test_suite":"%%\r\nd2=2;\r\nPhi=pi/4;\r\nd3=sqrt(2);\r\n\r\nx1=d2-d3*cos(Phi);\r\ny1=d3*sin(Phi);\r\n\r\nTheta=atan(y1/x1);\r\nd1=hypot(x1,y1);\r\n\r\n[od2, oPhi]=solve_mirror(d1,d2+d3,Theta);\r\n\r\nassert(abs(d2-od2)\u003c.001)\r\nassert(abs(Phi-oPhi)\u003c.001)\r\n%%\r\nd2=2;\r\nPhi=1.5*pi/4;\r\nd3=2;\r\n\r\nx1=d2-d3*cos(Phi);\r\ny1=d3*sin(Phi);\r\n\r\nTheta=atan(y1/x1);\r\nd1=hypot(x1,y1);\r\n\r\n[od2, oPhi]=solve_mirror(d1,d2+d3,Theta)\r\n\r\nassert(abs(d2-od2)\u003c.001)\r\nassert(abs(Phi-oPhi)\u003c.001)\r\n%%\r\nd2=3;\r\nPhi=.5*pi/4;\r\nd3=1;\r\n\r\nx1=d2-d3*cos(Phi);\r\ny1=d3*sin(Phi);\r\n\r\nTheta=atan(y1/x1);\r\nd1=hypot(x1,y1);\r\n\r\n[od2, oPhi]=solve_mirror(d1,d2+d3,Theta)\r\n\r\nassert(abs(d2-od2)\u003c.001)\r\nassert(abs(Phi-oPhi)\u003c.001)\r\n%%\r\nd2=3+rand;\r\nPhi=(.5+rand/10)*pi/4;\r\nd3=1+rand;\r\n\r\nx1=d2-d3*cos(Phi);\r\ny1=d3*sin(Phi);\r\n\r\nTheta=atan(y1/x1);\r\nd1=hypot(x1,y1);\r\n\r\n[od2, oPhi]=solve_mirror(d1,d2+d3,Theta)\r\n\r\nassert(abs(d2-od2)\u003c.001)\r\nassert(abs(Phi-oPhi)\u003c.001)\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":3097,"edited_by":26769,"edited_at":"2024-11-19T13:38:39.000Z","deleted_by":null,"deleted_at":null,"solvers_count":35,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":26,"created_at":"2013-06-15T23:44:39.000Z","updated_at":"2026-02-19T10:13:32.000Z","published_at":"2013-06-16T00:28:14.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eDetermine the mirror's distance and relative angle to the LASER Tracker given the distances to a reference SMR (Spherical Mounted Retro-reflector) and the angle to the SMR.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"center\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"288\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"582\\\"/\u003e\u003cw:attr w:name=\\\"verticalAlign\\\" w:val=\\\"baseline\\\"/\u003e\u003cw:attr w:name=\\\"altText\\\" w:val=\\\"\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eTheta is the included angle between d1 and d2.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ePhi is the angle of interest and is between d2 and d3.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe Test method is locate the SMR to capture the mirror reflectance. Record L. Rotate the SMR to be directly viewed by the Tracker. Record d1 and Theta.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven Theta, d1, and d2+d3 determine d2 and Phi.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eInput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e [d1, L, Theta] where L=d2+d3 and d1*cos(Theta) \u0026lt; d2\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eOutput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e [d2 Phi]\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eExamples:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eInput: [2^.5, 2+2^.5, pi/4]..... Output: [2 pi/4]\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eInput: [2.3994, 4, .2991]..... Output: [3, pi/4 ]\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"target\":\"/media/image1.JPEG\",\"relationshipId\":\"rId1\"}]},{\"partUri\":\"/media/image1.JPEG\",\"contentType\":\"image/JPEG\",\"content\":\"data:image/JPEG;base64,/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAEgAkYDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA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Qyy8tLKRzJIeWY/U1eoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACql1ptjesHurK3nZRgGWJXI/MVbpD0pMDzX4XaVptxpGrtNp9pIy6xdKpeBSQA/AHHapj4m8Wap4z13w/okGlxRaaYmFzdK5G1lztwp5JPfsBVn4WwTQaPrCzRSRltYumAdSuQX4Iz2pnhOCZPih42leGRY5GtdjspAbEZzg96F09BdH6/qT3mreM7q+vI7G30vSrOz+U3Oqbj9pOOXQKRtQe5NZumfFISeAdR1++ske50+6Nk0drLujuZcqAY2/uksPX8a5pY9LHiXXz480fU9T1H7W39mxG3lmjeDJ2LEF+Ue+f8AGqGjeH9V1P4a+KLS20eW01CHW/tsOntHs4UowRe3QEcU15je56LZaz400/VdNTXdOsriw1BthfTkkLWbkZHmZzlexYYwawpPEln4X+Ifi+7uVaWaRLSO2tY+ZLiUpwij/OK1V8cXviLUNJ0/w3aXcUjSB9SmurN1S2jA+ZCWABYngYrEv/BVv4o+IHi5riCSK7S3tvsF6AQYZAudyH6gZo6iOkvfFer+GfCMOoeILS3l1i8nWG2sLQlRvf7qFiTkju3Sqk3ijxR4auLGfxLHpNzp15Ols76eXVrR3OFLbidy544xXO+IYtW8efDywuLjSJJdX0a/Vr7TmUqZ9mVbb0zuByMU23g8C391p0Xh/wADT3t9LMhlSWGWBbRcjLuzDHB7DOaOodDopPE/izUvHWueHNFi0uOPTlhkFzdq54dc7SFPJJ6HjGK9BiD+UglIMmPmKjAz3xXA+F7eaP4u+NZnhkWJ47TY7KQrYQ5wehr0KhbD6hRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUmASCQMilooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//9k=\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":1720,"title":"Do the line-segments intersect?","description":"You are given two line segments. Do they cross?\r\nConsider one segment as (x1,y1) to (x2,y2), the other segment as (x3,y3) to (x4,y4). You are given a = [x1 y1; x2 y2]; b = [x3 y3; x4 y4]. Return tf=true if a and b intersect or tf=false if a and b do not touch.\r\nWhen lines do intersect they will do so cleanly at exactly one non-endpoint. That is, they will not nest, overlap, or \"kiss\" at the endpoints.\r\nExamples\r\n a = [0,0; 1,1];\r\n b = [0,1; 1,0];\r\n tf = true\r\n\r\n a = [0,0; 1,0];\r\n b = [0,1; 1,1];\r\n tf = false","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.4333px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 306.033px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 153.017px; transform-origin: 407px 153.017px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 153px 8px; transform-origin: 153px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eYou are given two line segments. Do they cross?\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 380.5px 8px; transform-origin: 380.5px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eConsider one segment as (x1,y1) to (x2,y2), the other segment as (x3,y3) to (x4,y4). You are given a = [x1 y1; x2 y2]; b = [x3 y3; x4 y4]. Return tf=true if a and b intersect or tf=false if a and b do not touch.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 382px 8px; transform-origin: 382px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eWhen lines do intersect they will do so cleanly at exactly one non-endpoint. That is, they will not nest, overlap, or \"kiss\" at the endpoints.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 30px 8px; transform-origin: 30px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eExamples\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgb(247, 247, 247); block-size: 143.033px; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; border-end-end-radius: 4px; border-end-start-radius: 4px; border-start-end-radius: 4px; border-start-start-radius: 4px; border-top-left-radius: 4px; border-top-right-radius: 4px; margin-block-end: 10px; margin-block-start: 10px; margin-bottom: 10px; margin-inline-end: 3px; margin-inline-start: 3px; margin-left: 3px; margin-right: 3px; margin-top: 10px; perspective-origin: 404px 71.5167px; transform-origin: 404px 71.5167px; margin-left: 3px; margin-top: 10px; margin-bottom: 10px; margin-right: 3px; \"\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 64px 8.5px; tab-size: 4; transform-origin: 64px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e a = [0,0; 1,1];\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 64px 8.5px; tab-size: 4; transform-origin: 64px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e b = [0,1; 1,0];\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 40px 8.5px; tab-size: 4; transform-origin: 40px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e tf = true\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 0px 8.5px; tab-size: 4; transform-origin: 0px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 64px 8.5px; tab-size: 4; transform-origin: 64px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e a = [0,0; 1,0];\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 64px 8.5px; tab-size: 4; transform-origin: 64px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e b = [0,1; 1,1];\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"background-color: rgba(0, 0, 0, 0); block-size: 20.4333px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; border-end-end-radius: 0px; border-end-start-radius: 0px; border-inline-end-color: rgb(233, 233, 233); border-inline-end-style: solid; border-inline-end-width: 1px; border-inline-start-color: rgb(233, 233, 233); border-inline-start-style: solid; border-inline-start-width: 1px; border-left-color: rgb(233, 233, 233); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(233, 233, 233); border-right-style: solid; border-right-width: 1px; border-start-end-radius: 0px; border-start-start-radius: 0px; border-top-left-radius: 0px; border-top-right-radius: 0px; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; min-block-size: 18px; min-height: 18px; padding-inline-start: 4px; padding-left: 4px; perspective-origin: 404px 10.2167px; transform-origin: 404px 10.2167px; white-space: nowrap; \"\u003e\u003cspan style=\"block-size: auto; border-inline-end-color: rgb(0, 0, 0); border-inline-end-style: none; border-inline-end-width: 0px; border-inline-start-color: rgb(0, 0, 0); border-inline-start-style: none; border-inline-start-width: 0px; border-left-color: rgb(0, 0, 0); border-left-style: none; border-left-width: 0px; border-right-color: rgb(0, 0, 0); border-right-style: none; border-right-width: 0px; display: inline; margin-inline-end: 45px; margin-right: 45px; min-block-size: 0px; min-height: 0px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 44px 8.5px; tab-size: 4; transform-origin: 44px 8.5px; unicode-bidi: normal; white-space: pre; margin-right: 45px; \"\u003e\u003cspan style=\"margin-inline-end: 0px; margin-right: 0px; \"\u003e tf = false\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function tf = intersecting(a,b)\r\n  tf = [];\r\nend","test_suite":"%%\r\na = [0,0; 1,1];\r\nb = [0,1; 1,0];\r\ntf_correct = true;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [0,0; 1,1];\r\nb = [1,0; 0,1];\r\ntf_correct = true;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [0,0; 1,0];\r\nb = [0,1; 1,1];\r\ntf_correct = false;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [0,0; 1,0];\r\nb = [2,0; 3,0];\r\ntf_correct = false;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [4 3;6 8];\r\nb = [3 7;6 9];\r\ntf_correct = false;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [6 2;6 9];\r\nb = [7 6;4 5];\r\ntf_correct = true;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n%%\r\na = [3 -3;-2 -2];\r\nb = [-1 1;0 -4];\r\ntf_correct = true;\r\nassert(isequal(intersecting(a,b),tf_correct ))\r\n\r\n","published":true,"deleted":false,"likes_count":2,"comments_count":5,"created_by":7,"edited_by":223089,"edited_at":"2022-07-11T06:33:54.000Z","deleted_by":null,"deleted_at":null,"solvers_count":77,"test_suite_updated_at":"2022-07-11T06:33:54.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2013-07-16T20:37:41.000Z","updated_at":"2026-02-19T10:15:21.000Z","published_at":"2013-07-16T20:57:36.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eYou are given two line segments. Do they cross?\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eConsider one segment as (x1,y1) to (x2,y2), the other segment as (x3,y3) to (x4,y4). You are given a = [x1 y1; x2 y2]; b = [x3 y3; x4 y4]. Return tf=true if a and b intersect or tf=false if a and b do not touch.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eWhen lines do intersect they will do so cleanly at exactly one non-endpoint. That is, they will not nest, overlap, or \\\"kiss\\\" at the endpoints.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eExamples\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[ a = [0,0; 1,1];\\n b = [0,1; 1,0];\\n tf = true\\n\\n a = [0,0; 1,0];\\n b = [0,1; 1,1];\\n tf = false]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":2069,"title":"Parallel vectors","description":"Return true or false depending on whether 2 vectors are parallel or not. Vectors can be  2 or 3 dimensional. The origin is not considered to be a vector in this problem.\r\nVectors are row vectors.\r\n\r\nSo:\r\np1=[0 0 0]\r\np2=[1 2 3]\r\noutput = false\r\n\r\np1=[1 1];\r\np2=[4 4]\r\noutput =true\r\n\r\n","description_html":"\u003cp\u003eReturn true or false depending on whether 2 vectors are parallel or not. Vectors can be  2 or 3 dimensional. The origin is not considered to be a vector in this problem.\r\nVectors are row vectors.\u003c/p\u003e\u003cp\u003eSo:\r\np1=[0 0 0]\r\np2=[1 2 3]\r\noutput = false\u003c/p\u003e\u003cp\u003ep1=[1 1];\r\np2=[4 4]\r\noutput =true\u003c/p\u003e","function_template":"function y = isparallel(p1,p2)\r\n  y = x;\r\nend","test_suite":"%%\r\np1=[1 2 3];\r\np2=[2 4 6];\r\ny_correct = true;\r\nassert(isequal(isparallel(p1,p2),y_correct))\r\n%%\r\np1=[1 2 3];\r\np2=[2 5 6];\r\ny_correct = false;\r\nassert(isequal(isparallel(p1,p2),y_correct))\r\n%%\r\np1=[666 911];\r\np2=[0.1 0.1*911/666];\r\ny_correct = true;\r\nassert(isequal(isparallel(p1,p2),y_correct))\r\n\r\n%%\r\np1=[1 2 3];\r\np2=[0 0 0];\r\ny_correct = false;\r\nassert(isequal(isparallel(p1,p2),y_correct))\r\n","published":true,"deleted":false,"likes_count":2,"comments_count":0,"created_by":20079,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":152,"test_suite_updated_at":"2013-12-20T15:17:23.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2013-12-20T14:46:59.000Z","updated_at":"2026-04-01T15:38:18.000Z","published_at":"2013-12-20T15:17:23.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eReturn true or false depending on whether 2 vectors are parallel or not. Vectors can be 2 or 3 dimensional. The origin is not considered to be a vector in this problem. Vectors are row vectors.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eSo: p1=[0 0 0] p2=[1 2 3] output = false\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ep1=[1 1]; p2=[4 4] output =true\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":2082,"title":"Vector parallel to plane?","description":"Given the coefficients of the equation which defines a plane as follows:\r\nax+by+cz=d, return a boolean indicating whether the 2nd input parameter, a vector with 3 elements, is parallel to this plane. The plane will not be parallel to the xy plane.","description_html":"\u003cp\u003eGiven the coefficients of the equation which defines a plane as follows:\r\nax+by+cz=d, return a boolean indicating whether the 2nd input parameter, a vector with 3 elements, is parallel to this plane. The plane will not be parallel to the xy plane.\u003c/p\u003e","function_template":"function isparallel = parallel2plane(a,b,c,d,vec)\r\n  isparallel = false;\r\nend","test_suite":"%%\r\na = 1;\r\nb=  1;\r\nc=1;\r\nd=1969;\r\nvec=[1 1 1];\r\ny_correct = false;\r\nassert(isequal(parallel2plane(a,b,c,d,vec),y_correct))\r\n%%\r\na = 1;\r\nb=  1;\r\nc=1;\r\nd=1969;\r\nvec=[0 -1492 1492];\r\ny_correct = true;\r\nassert(isequal(parallel2plane(a,b,c,d,vec),y_correct))\r\n%%\r\na = 1;\r\nb=  2;\r\nc=3;\r\nd=1969;\r\nvec=[0 -1492 1492];\r\ny_correct = false;\r\nassert(isequal(parallel2plane(a,b,c,d,vec),y_correct))\r\n%%\r\na = 1;\r\nb=  2;\r\nc=3;\r\nd=1969;\r\nvec=[1 0 -1/3];\r\ny_correct = true;\r\nassert(isequal(parallel2plane(a,b,c,d,vec),y_correct))\r\n%%\r\na = 0;\r\nb=  5;\r\nc=7;\r\nd=1969;\r\nvec=[0 49 -35];\r\ny_correct = true;\r\nassert(isequal(parallel2plane(a,b,c,d,vec),y_correct))\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":20079,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":85,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":26,"created_at":"2013-12-29T12:49:35.000Z","updated_at":"2026-04-01T15:37:05.000Z","published_at":"2013-12-29T12:49:35.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven the coefficients of the equation which defines a plane as follows: ax+by+cz=d, return a boolean indicating whether the 2nd input parameter, a vector with 3 elements, is parallel to this plane. The plane will not be parallel to the xy plane.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":2100,"title":"distance to a straight line (2D) given any 2 distinct points on this straight line","description":"Given 2 points P1,P2 on a straight line and a 3rd point, determine the distance of the 3rd point to the straight line. Your answer should have an accuracy of 1e-6.\r\n\r\nHint: create a parameter representation of the (very...) long line.","description_html":"\u003cp\u003eGiven 2 points P1,P2 on a straight line and a 3rd point, determine the distance of the 3rd point to the straight line. Your answer should have an accuracy of 1e-6.\u003c/p\u003e\u003cp\u003eHint: create a parameter representation of the (very...) long line.\u003c/p\u003e","function_template":"function d = dist2line(p1,p2,pe)\r\n  d=norm(pe);\r\nend","test_suite":"%%\r\np1=[-1;0];\r\np2=[2;3];\r\npe=[-2;0];\r\n\r\nd=round(1e+6*dist2line(p1,p2,pe))/1e+6;\r\nassert(isequal(d,7.071070e-01))\r\n%%\r\np1=[-1;0];\r\np2=[2;3];\r\npe=[-0.8;0.1];\r\n\r\nd=round(1e+6*dist2line(p1,p2,pe))/1e+6;\r\nassert(isequal(d,7.071100e-02))\r\n%%\r\np1=[-1;0];\r\np2=[2;3];\r\npe=[0;0.9];\r\n\r\nd=round(1e+6*dist2line(p1,p2,pe))/1e+6;\r\nassert(isequal(d,7.071100e-02))\r\n%%\r\np1=[0;-1];\r\np2=[0;1];\r\npe=[-pi;100];\r\n\r\nd=round(1e+6*dist2line(p1,p2,pe))/1e+6;\r\nassert(isequal(d,3.141593))\r\n%%\r\np1=[-1;0];\r\np2=[2;3];\r\npe=[0;1];\r\n\r\nd=round(1e+6*dist2line(p1,p2,pe))/1e+6;\r\nassert(isequal(d,0))","published":true,"deleted":false,"likes_count":3,"comments_count":2,"created_by":20079,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":55,"test_suite_updated_at":"2014-01-15T03:55:52.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-01-10T05:50:50.000Z","updated_at":"2026-02-19T10:19:57.000Z","published_at":"2014-01-10T13:49:02.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven 2 points P1,P2 on a straight line and a 3rd point, determine the distance of the 3rd point to the straight line. Your answer should have an accuracy of 1e-6.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eHint: create a parameter representation of the (very...) long line.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":2175,"title":"Slicing the cube","description":"A bored matlab enthusiast has a cube with volume n^3.\r\nHe decides to paint the entire surface of the cube red. Then, with slices parallel to the faces of the cube, he cuts the cube into 1x1x1 cubes.\r\n\r\nSome cubes are completely free of paint:x \r\n\r\nSome cubes are painted red on only one side:y\r\n\r\nSome cubes are painted red on two sides:z\r\n\r\n\r\nHelp him find x,y \u0026 z\r\n\r\n\r\n","description_html":"\u003cp\u003eA bored matlab enthusiast has a cube with volume n^3.\r\nHe decides to paint the entire surface of the cube red. Then, with slices parallel to the faces of the cube, he cuts the cube into 1x1x1 cubes.\u003c/p\u003e\u003cp\u003eSome cubes are completely free of paint:x\u003c/p\u003e\u003cp\u003eSome cubes are painted red on only one side:y\u003c/p\u003e\u003cp\u003eSome cubes are painted red on two sides:z\u003c/p\u003e\u003cp\u003eHelp him find x,y \u0026 z\u003c/p\u003e","function_template":"function [x y z] = cube_slices(n)\r\n x=\r\n y=\r\n z=\r\nend","test_suite":"%%\r\nn=5\r\ny_correct=[27 54 36]\r\nassert(isequal(cube_slices(n),y_correct))\r\n\r\n%%\r\nn=3\r\ny_correct=[1 6 12]\r\nassert(isequal(cube_slices(n),y_correct))\r\n\r\n%%\r\nn=7\r\ny_correct=[125 150 60]\r\nassert(isequal(cube_slices(n),y_correct))","published":true,"deleted":false,"likes_count":10,"comments_count":0,"created_by":17228,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":92,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":26,"created_at":"2014-02-11T19:13:57.000Z","updated_at":"2026-02-19T10:22:38.000Z","published_at":"2014-02-11T19:13:57.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA bored matlab enthusiast has a cube with volume n^3. He decides to paint the entire surface of the cube red. Then, with slices parallel to the faces of the cube, he cuts the cube into 1x1x1 cubes.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eSome cubes are completely free of paint:x\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eSome cubes are painted red on only one side:y\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eSome cubes are painted red on two sides:z\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eHelp him find x,y \u0026amp; z\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":2199,"title":"Pairwise Euclidean Distance","description":"Given two matrices A,B of dimensions NxK and NxL respectively, calculate the pairwise euclidean distance of all vectors (columns).  The result should be a matrix of dimensions KxL which contains all possible pairs of distances.\r\n\r\nExample:\r\n\r\n pairEuc([1 2; 3 4]', [5 6; 7 8; 9 10]')\r\n ans =\r\n    5.6569    8.4853   11.3137\r\n    2.8284    5.6569    8.4853","description_html":"\u003cp\u003eGiven two matrices A,B of dimensions NxK and NxL respectively, calculate the pairwise euclidean distance of all vectors (columns).  The result should be a matrix of dimensions KxL which contains all possible pairs of distances.\u003c/p\u003e\u003cp\u003eExample:\u003c/p\u003e\u003cpre\u003e pairEuc([1 2; 3 4]', [5 6; 7 8; 9 10]')\r\n ans =\r\n    5.6569    8.4853   11.3137\r\n    2.8284    5.6569    8.4853\u003c/pre\u003e","function_template":"function d = pairEuc(a,b)\r\n  d = zeros(size(a,2),size(b,2));\r\nend","test_suite":"%%\r\na = [9 10 3 10 10; 10 7 6 2 5; 2 1 10 10 9];\r\nb = [2 8 1; 5 10 9; 10 7 10];\r\nd = [11.7473    5.0990   11.3578; ...\r\n     12.2066    7.0000   12.8841; ...\r\n      1.4142    7.0711    3.6056; ...\r\n      8.5440    8.7750   11.4018; ...\r\n      8.0623    5.7446    9.8995];\r\nassert(all(all(abs(pairEuc(a,b)-d)\u003c1e-4)))\r\n\r\n%%\r\na = [1 2; 3 4]';\r\nb = [5 6; 7 8; 9 10]';\r\nd = [5.6569    8.4853   11.3137;...\r\n     2.8284    5.6569    8.4853];\r\nassert(all(all(abs(pairEuc(a,b)-d)\u003c1e-4)))","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":23140,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":52,"test_suite_updated_at":"2014-02-19T00:50:33.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-02-19T00:27:04.000Z","updated_at":"2026-02-19T10:24:33.000Z","published_at":"2014-02-19T00:50:33.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven two matrices A,B of dimensions NxK and NxL respectively, calculate the pairwise euclidean distance of all vectors (columns). The result should be a matrix of dimensions KxL which contains all possible pairs of distances.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eExample:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[ pairEuc([1 2; 3 4]', [5 6; 7 8; 9 10]')\\n ans =\\n    5.6569    8.4853   11.3137\\n    2.8284    5.6569    8.4853]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":2218,"title":"Wayfinding 1 - crossing","description":"This is the first part of a series of assignments about wayfinding. The final goal is to be able to calculate the fastest route through a terrain of areas with different properties. The assignments will build on top of each other, gradually increasing the complexity, but guiding you stepwise towards the final goal. You can re-use code from preceding assignments to save some work.\r\n\r\n*How many times does AB cross another line?*\r\n\r\n\u003c\u003chttp://i60.tinypic.com/mk7us1.png\u003e\u003e\r\n\r\nThe first assignment deals with the problem of finding the lines we cross while going from A to B. The answer will be the number of times the segment AB intersects with the other lines. The other lines are isolated (or intersecting) line segments of two nodes each.  \r\n\r\nThe inputs of the function |WayfindingIntersections(AB,L)| are a matrix |AB| of two columns, each with x-y coordinates, of our straight path from A (1st column) to B (2nd column), and a 3-dimensional matrix |L| of columns with x- and y-coordinates, each column either the start or the end of a line, and with all individual lines concatenated in the 3rd dimension.\r\n\r\n AB = [\r\n   xA xB\r\n   yA yB\r\n ]\r\n\r\n L = cat(3,...\r\n  [ x1_start x1_end\r\n    y1_start y1_end ] ...\r\n   ,...\r\n  [ x2_start x2_end\r\n    y2_start y2_end ] ...\r\n   ,...\r\n  [ x3_start x3_end\r\n    y3_start y3_end ] ... % etc.\r\n  )  \r\n\r\nYour output n will be the number of times the line AB intersects with any of the other lines. The lines will not 'just touch' AB with their begin or end. \r\n\r\np.s. I noticed later on that there is another Cody problem \u003chttp://www.mathworks.nl/matlabcentral/cody/problems/1720-do-the-lines-intersect 1720\u003e that is somewhat similar. But this was a logical start for the series.","description_html":"\u003cp\u003eThis is the first part of a series of assignments about wayfinding. The final goal is to be able to calculate the fastest route through a terrain of areas with different properties. The assignments will build on top of each other, gradually increasing the complexity, but guiding you stepwise towards the final goal. You can re-use code from preceding assignments to save some work.\u003c/p\u003e\u003cp\u003e\u003cb\u003eHow many times does AB cross another line?\u003c/b\u003e\u003c/p\u003e\u003cimg src = \"http://i60.tinypic.com/mk7us1.png\"\u003e\u003cp\u003eThe first assignment deals with the problem of finding the lines we cross while going from A to B. The answer will be the number of times the segment AB intersects with the other lines. The other lines are isolated (or intersecting) line segments of two nodes each.\u003c/p\u003e\u003cp\u003eThe inputs of the function \u003ctt\u003eWayfindingIntersections(AB,L)\u003c/tt\u003e are a matrix \u003ctt\u003eAB\u003c/tt\u003e of two columns, each with x-y coordinates, of our straight path from A (1st column) to B (2nd column), and a 3-dimensional matrix \u003ctt\u003eL\u003c/tt\u003e of columns with x- and y-coordinates, each column either the start or the end of a line, and with all individual lines concatenated in the 3rd dimension.\u003c/p\u003e\u003cpre\u003e AB = [\r\n   xA xB\r\n   yA yB\r\n ]\u003c/pre\u003e\u003cpre\u003e L = cat(3,...\r\n  [ x1_start x1_end\r\n    y1_start y1_end ] ...\r\n   ,...\r\n  [ x2_start x2_end\r\n    y2_start y2_end ] ...\r\n   ,...\r\n  [ x3_start x3_end\r\n    y3_start y3_end ] ... % etc.\r\n  )  \u003c/pre\u003e\u003cp\u003eYour output n will be the number of times the line AB intersects with any of the other lines. The lines will not 'just touch' AB with their begin or end.\u003c/p\u003e\u003cp\u003ep.s. I noticed later on that there is another Cody problem \u003ca href = \"http://www.mathworks.nl/matlabcentral/cody/problems/1720-do-the-lines-intersect\"\u003e1720\u003c/a\u003e that is somewhat similar. But this was a logical start for the series.\u003c/p\u003e","function_template":"function n = WayfindingIntersections(AB,L)\r\n  n = randi(size(L,3)+1)-1;\r\nend","test_suite":"%%\r\nAB = [2 0;0 5];\r\nL = cat(3,...\r\n    [1 0;2 2],...\r\n    [-1 4;3 3],...\r\n    [-3 2;0 2],...\r\n    [2 3;4 2]...\r\n    );\r\nn = WayfindingIntersections(AB,L)\r\nn_correct = 2;\r\nassert(isequal(n,n_correct));\r\n\r\n%\r\nAB = [ 6 -3 ; 5 2 ];\r\nL = cat(3,...\r\n[ 2 2 ; 2 -9 ],...\r\n[ -2 3 ; 8 8 ],...\r\n[ 7 -1 ; 4 6 ],...\r\n[ 7 -3 ; -6 1 ],...\r\n[ -6 -6 ; -1 2 ],...\r\n[ 5 -8 ; 3 4 ],...\r\n[ 3 5 ; -8 -9 ],...\r\n[ 8 -8 ; 4 -3 ],...\r\n[ -7 9 ; -5 9 ],...\r\n[ 6 3 ; 8 3 ],...\r\n[ 0 4 ; 9 -2 ],...\r\n[ -8 0 ; 4 0 ],...\r\n[ 6 8 ; 6 0 ],...\r\n[ -6 2 ; -6 9 ],...\r\n[ 8 -4 ; 1 -5 ],...\r\n[ 5 -1 ; -5 -3 ],...\r\n[ -2 -9 ; 6 -5 ],...\r\n[ 8 6 ; 6 -7 ],...\r\n[ -4 2 ; 5 2 ],...\r\n[ 8 6 ; 0 6 ]...\r\n);\r\nn = WayfindingIntersections(AB,L)\r\nn_correct = 7;\r\nassert(isequal(n,n_correct));\r\n\r\n%\r\nAB = [ -3 -1 ; -3 7 ];\r\nL = cat(3,...\r\n[ 9 8 ; 1 6 ],...\r\n[ -4 -6 ; -3 9 ],...\r\n[ -2 8 ; 7 5 ],...\r\n[ -3 5 ; -8 2 ],...\r\n[ 1 2 ; 3 5 ],...\r\n[ 4 -5 ; -3 -5 ],...\r\n[ 8 5 ; -1 -2 ],...\r\n[ 4 8 ; 3 5 ],...\r\n[ -3 -4 ; 7 8 ],...\r\n[ 9 7 ; -1 -3 ]...\r\n);\r\nn = WayfindingIntersections(AB,L)\r\nn_correct = 1;\r\nassert(isequal(n,n_correct));\r\n\r\n%\r\nAB = [ 5 9 ; -9 0 ];\r\nL = cat(3,...\r\n[ 3 -1 ; 1 -2 ],...\r\n[ -5 3 ; -3 4 ],...\r\n[ -9 -2 ; -3 -7 ],...\r\n[ -6 -5 ; -1 -3 ],...\r\n[ 4 -3 ; 5 -9 ],...\r\n[ -6 -2 ; -4 -4 ],...\r\n[ -1 -7 ; -3 -4 ],...\r\n[ 0 9 ; 6 3 ],...\r\n[ -6 1 ; -7 -8 ],...\r\n[ 6 5 ; 6 5 ],...\r\n[ 5 6 ; -5 -1 ],...\r\n[ 7 9 ; -7 -7 ],...\r\n[ -9 -4 ; -2 -3 ],...\r\n[ 3 5 ; -2 5 ],...\r\n[ -3 -4 ; 5 -6 ]...\r\n);\r\nn = WayfindingIntersections(AB,L)\r\nn_correct = 0;\r\nassert(isequal(n,n_correct));\r\n\r\n%\r\nAB = [ 6 -3 ; 6 -7 ];\r\nL = cat(3,...\r\n[ -7 0 ; -3 0 ],...\r\n[ -1 5 ; -8 0 ],...\r\n[ 8 -5 ; 1 4 ],...\r\n[ -4 -4 ; 7 3 ],...\r\n[ 0 0 ; 4 -5 ],...\r\n[ -2 -3 ; -4 4 ],...\r\n[ 4 -8 ; 2 -5 ],...\r\n[ -7 6 ; 6 3 ],...\r\n[ -2 -7 ; -3 -8 ],...\r\n[ -6 5 ; 8 7 ],...\r\n[ 9 -9 ; 5 -9 ],...\r\n[ 6 8 ; 4 6 ],...\r\n[ 2 7 ; 5 -2 ],...\r\n[ -7 -5 ; -1 -7 ],...\r\n[ -8 -2 ; 0 -6 ]...\r\n);\r\nn = WayfindingIntersections(AB,L)\r\nn_correct = 7;\r\nassert(isequal(n,n_correct));\r\n\r\n%\r\nAB = [ 45 25 ; 23 101 ];\r\nL = cat(3,...\r\n[ 94 6 ; 2 71 ],...\r\n[ 40 -9 ; 51 84 ],...\r\n[ -8 97 ; 72 105 ],...\r\n[ 18 59 ; 36 88 ],...\r\n[ 95 56 ; 10 -6 ],...\r\n[ 61 48 ; 96 22 ],...\r\n[ 12 100 ; 94 16 ],...\r\n[ 103 90 ; 54 106 ],...\r\n[ 108 53 ; 34 68 ],...\r\n[ 9 20 ; 1 7 ],...\r\n[ 76 64 ; -8 106 ],...\r\n[ 60 9 ; 51 69 ],...\r\n[ 75 62 ; 60 -7 ],...\r\n[ 80 -8 ; 70 68 ],...\r\n[ 8 30 ; 68 67 ]...\r\n);\r\nn = WayfindingIntersections(AB,L)\r\nn_correct = 7;\r\nassert(isequal(n,n_correct));\r\n\r\n%\r\nAB = [ -5 -6 ; -2 -6 ];\r\nL = cat(3,...\r\n[ -1 -7 ; -7 -1 ],...\r\n[ -4 -6 ; -6 -5 ],...\r\n[ -7 -2 ; -1 -5 ],...\r\n[ -9 -6 ; -4 -4 ],...\r\n[ -9 -3 ; -3 -2 ],...\r\n[ -2 -1 ; -3 -2 ],...\r\n[ -4 -5 ; -6 -9 ],...\r\n[ -8 -1 ; -4 -6 ],...\r\n[ -1 -5 ; -5 -1 ],...\r\n[ -4 -6 ; -2 -5 ]...\r\n);\r\nn = WayfindingIntersections(AB,L)\r\nn_correct = 6;\r\nassert(isequal(n,n_correct));\r\n\r\n%\r\nAB = [ 1 6 ; 6 7 ];\r\nL = cat(3,...\r\n[ 5 8 ; 2 8 ],...\r\n[ 6 5 ; 3 2 ],...\r\n[ 4 8 ; 6 1 ],...\r\n[ 7 2 ; 7 9 ],...\r\n[ 1 8 ; 1 2 ],...\r\n[ 1 6 ; 1 9 ],...\r\n[ 2 6 ; 1 2 ],...\r\n[ 3 9 ; 2 4 ],...\r\n[ 5 9 ; 2 8 ],...\r\n[ 2 8 ; 2 5 ]...\r\n);\r\nn = WayfindingIntersections(AB,L)\r\nn_correct = 1;\r\nassert(isequal(n,n_correct));","published":true,"deleted":false,"likes_count":1,"comments_count":4,"created_by":6556,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":24,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":26,"created_at":"2014-02-25T14:46:37.000Z","updated_at":"2026-02-19T10:27:05.000Z","published_at":"2014-02-25T14:59:59.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.JPEG\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThis is the first part of a series of assignments about wayfinding. The final goal is to be able to calculate the fastest route through a terrain of areas with different properties. The assignments will build on top of each other, gradually increasing the complexity, but guiding you stepwise towards the final goal. You can re-use code from preceding assignments to save some work.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eHow many times does AB cross another line?\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe first assignment deals with the problem of finding the lines we cross while going from A to B. The answer will be the number of times the segment AB intersects with the other lines. The other lines are isolated (or intersecting) line segments of two nodes each.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe inputs of the function\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eWayfindingIntersections(AB,L)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e are a matrix\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eAB\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e of two columns, each with x-y coordinates, of our straight path from A (1st column) to B (2nd column), and a 3-dimensional matrix\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eL\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e of columns with x- and y-coordinates, each column either the start or the end of a line, and with all individual lines concatenated in the 3rd dimension.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[ AB = [\\n   xA xB\\n   yA yB\\n ]\\n\\n L = cat(3,...\\n  [ x1_start x1_end\\n    y1_start y1_end ] ...\\n   ,...\\n  [ x2_start x2_end\\n    y2_start y2_end ] ...\\n   ,...\\n  [ x3_start x3_end\\n    y3_start y3_end ] ... % etc.\\n  )]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eYour output n will be the number of times the line AB intersects with any of the other lines. The lines will not 'just touch' AB with their begin or end.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ep.s. I noticed later on that there is another Cody problem\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.mathworks.nl/matlabcentral/cody/problems/1720-do-the-lines-intersect\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e1720\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e that is somewhat similar. But this was a logical start for the series.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.JPEG\",\"contentType\":\"image/JPEG\",\"content\":\"data:image/JPEG;base64,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\"}]}"},{"id":2219,"title":"Wayfinding 2 - traversing","description":"This is the second part of a series of assignments about wayfinding. The final goal is to be able to calculate the fastest route through a terrain of areas with different properties. The assignments will build on top of each other, gradually increasing the complexity, but guiding you stepwise towards the final goal. You can re-use code from preceding assignments to save some work. See \u003chttp://www.mathworks.com/matlabcentral/cody/problems/2218-wayfinding-1-crossing [1]\u003e.\r\n\r\n*How many times does AB cross the boundary of area F?*\r\n\r\n\u003c\u003chttp://i59.tinypic.com/219vz42.png\u003e\u003e\r\n\r\nFor this second assignment in this series you have to calculate how many times we cross the boundary of a single area while going from A to B. Our path from A to B is a straight line. And the area boundary is a closed polygon consisting of a finite number of straight segments.\r\n\r\nThe inputs of the function WayfindingBoundaryCrossing(AB,F) are a matrix AB of two columns, each with x-y coordinates, of our straight path from A (1st column) to B (2nd column), and a matrix F of columns with x- and y-coordinates, each column a subsequent node of the polygon boundary of the area. The last node is connected to the first.\r\n\r\n AB = [\r\n   xA xB\r\n   yA yB\r\n ]\r\n\r\n F = [\r\n  [ x1 x2 ... xn ;\r\n    y1 y2 ... yn ]\r\n\r\nYour output n will be the number of times the line AB crosses the boundary of F. Note that AB may cross the boundary of F at a corner node of F.\r\n","description_html":"\u003cp\u003eThis is the second part of a series of assignments about wayfinding. The final goal is to be able to calculate the fastest route through a terrain of areas with different properties. The assignments will build on top of each other, gradually increasing the complexity, but guiding you stepwise towards the final goal. You can re-use code from preceding assignments to save some work. See \u003ca href = \"http://www.mathworks.com/matlabcentral/cody/problems/2218-wayfinding-1-crossing\"\u003e[1]\u003c/a\u003e.\u003c/p\u003e\u003cp\u003e\u003cb\u003eHow many times does AB cross the boundary of area F?\u003c/b\u003e\u003c/p\u003e\u003cimg src = \"http://i59.tinypic.com/219vz42.png\"\u003e\u003cp\u003eFor this second assignment in this series you have to calculate how many times we cross the boundary of a single area while going from A to B. Our path from A to B is a straight line. And the area boundary is a closed polygon consisting of a finite number of straight segments.\u003c/p\u003e\u003cp\u003eThe inputs of the function WayfindingBoundaryCrossing(AB,F) are a matrix AB of two columns, each with x-y coordinates, of our straight path from A (1st column) to B (2nd column), and a matrix F of columns with x- and y-coordinates, each column a subsequent node of the polygon boundary of the area. The last node is connected to the first.\u003c/p\u003e\u003cpre\u003e AB = [\r\n   xA xB\r\n   yA yB\r\n ]\u003c/pre\u003e\u003cpre\u003e F = [\r\n  [ x1 x2 ... xn ;\r\n    y1 y2 ... yn ]\u003c/pre\u003e\u003cp\u003eYour output n will be the number of times the line AB crosses the boundary of F. Note that AB may cross the boundary of F at a corner node of F.\u003c/p\u003e","function_template":"function n = WayfindingBoundaryCrossing(AB,F)\r\n  n = randi(size(F,2))-1;\r\nend","test_suite":"%%\r\nAB = [ 0 0 ; 6 -8 ];\r\nF = [\r\n      -4    4    4   -4\r\n       2    2   -4   -4\r\n  ];\r\nn = WayfindingBoundaryCrossing(AB,F);\r\nn_correct = 2;\r\nassert(isequal(n,n_correct));\r\n\r\n%%\r\nAB = [ 0 0 ; 4 -6 ];\r\nF = [\r\n      -6    4    0\r\n      -0    2   -4\r\n  ];\r\nn = WayfindingBoundaryCrossing(AB,F);\r\nn_correct = 2;\r\nassert(isequal(n,n_correct));\r\n\r\n%%\r\nAB = [ 6 -6 ; 0 0 ];\r\nF = [\r\n      -8   -8    4\r\n       2   -4   -0\r\n  ];\r\nn = WayfindingBoundaryCrossing(AB,F);\r\nn_correct = 1;\r\nassert(isequal(n,n_correct));\r\n\r\n%%\r\nAB = [ 8 -6 ; 6 -8 ];\r\nF = [\r\n      -6    0   -3    7    9    4    6   -4   -7   -2   -7   -8\r\n      -9   -9    0   -4    1    7   -0    4   -1   -7   -5   -9\r\n  ];\r\nn = WayfindingBoundaryCrossing(AB,F);\r\nn_correct = 7;\r\nassert(isequal(n,n_correct));\r\n\r\n%%\r\nn_correct = randi(9)-1;\r\nAB = [ 0 0 ; n_correct*2-9 -10 ];\r\nF = [\r\n      -2   -2    2    2   -2   -2    2    2   -2   -2    2    2   -2   -2    4    4\r\n      -8   -6   -6   -4   -4   -2   -2   -0   -0    2    2    4    4    6    6   -8\r\n  ];\r\nn = WayfindingBoundaryCrossing(AB,F);\r\nassert(isequal(n,n_correct));","published":true,"deleted":false,"likes_count":3,"comments_count":4,"created_by":6556,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":22,"test_suite_updated_at":"2014-02-26T11:59:09.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-02-25T15:14:11.000Z","updated_at":"2026-02-19T10:33:57.000Z","published_at":"2014-02-26T11:59:09.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.JPEG\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThis is the second part of a series of assignments about wayfinding. The final goal is to be able to calculate the fastest route through a terrain of areas with different properties. The assignments will build on top of each other, gradually increasing the complexity, but guiding you stepwise towards the final goal. You can re-use code from preceding assignments to save some work. See\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.mathworks.com/matlabcentral/cody/problems/2218-wayfinding-1-crossing\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e[1]\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eHow many times does AB cross the boundary of area F?\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFor this second assignment in this series you have to calculate how many times we cross the boundary of a single area while going from A to B. Our path from A to B is a straight line. And the area boundary is a closed polygon consisting of a finite number of straight segments.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe inputs of the function WayfindingBoundaryCrossing(AB,F) are a matrix AB of two columns, each with x-y coordinates, of our straight path from A (1st column) to B (2nd column), and a matrix F of columns with x- and y-coordinates, each column a subsequent node of the polygon boundary of the area. The last node is connected to the first.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[ AB = [\\n   xA xB\\n   yA yB\\n ]\\n\\n F = [\\n  [ x1 x2 ... xn ;\\n    y1 y2 ... yn ]]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eYour output n will be the number of times the line AB crosses the boundary of F. Note that AB may cross the boundary of F at a corner node of F.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.JPEG\",\"contentType\":\"image/JPEG\",\"content\":\"data:image/JPEG;base64,/9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAEsASwDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD31VG0cUbR/doX7op1ACbRRtFLRQA3aP7tG0f3adRQA3aP7tG0f3adRQA3aP7tG0f3adRQA3aP7tG0f3adRQA3aP7tLtFLRQAm2jaKWigBNoo2iuY174h+FfDTMmpa3apMnWCNvMk/75XJH41wWoftF+GrclbDTdRuz/eZViX+ZP6UAex7R/do2j+7Xz3N+0rdeZ+48OReX/00uTn9Fq7Y/tJ2zf8AH/4elX3gnB/QgUAe77R/do2j+7Xm+kfHTwTqZVJbufT3P8N1CQP++lyK7+w1Gx1S0W5sLuC6t26SQSB1/MUAWdo/u0u0UtFADdo/u0bR/dp1FADdo/u0bR/dp1FADdo/u0u0UtFACUUtFACUUtFACUUtFACUUtJQAi/dFOpF+7S0AFFFFABRRRQAUUUUAFFFFABRRRQAUUV4/wDFX4uxeG/M0LQZEl1cjbLP1W1/xf8Al3oA6zxp8SdB8EW5F9N59+RmOygIMh92/uj3P4Zr5+1/4n+NPHt79gsjLbW8hwtjp+csP9ph8zfy9qi8I/D3WPHN3JrGq3E8VlJIWku5fmknbvtz1+p4r3bQ9A0nw3Z/ZdJtFt0P336vJ/vN1NeDmefUMG3CHvT7dF6/5HTSw8p69DxbRPglrd6qy6rdwach58v/AFsv5DgfnXb2PwX8K2q/6U19eN33yCMfko/rXotGa+RxGf46s9J8q8tPx3/E7YYWmulzko/hh4KjTaNCQ+7Tyk/+hVXufhN4MuPu6bLAfWK4b+pNdrmiuNZnjU7+1l97L9hT7Hkeq/AqykDNpGsSxv2juoww/wC+lx/KuGufD/jb4dXn223a5tVH/L1Zybo2/wB7Hb/eFfSuMU1lDKyt8ynqK9XCcS4ui/3vvr7n96Mp4SEtjzfwV+0Cszx2Pi2FY2Pyi/gXj/gaDp9V/Kvc7S7t761jurWaOa3lXdHJEwZXB7givB/GXwm0/VlkvNFEdjedfL6QyH6fwn6cVw3g7x5r/wAMdafT7yKVrISYudPl7f7Seh/Q19pgcxoY2HNTevbqjgq0ZU99j65orK0DX9P8S6RBqml3CzW0o4PdT3Vh2IrVrvMgooooAKKKKACiiigAooooAKKKKACkpaaetACrS0lLQAUUUUAFFFFABRRRQAUUUUAFFFZPiHXbTw1oN7q9822C1jLkZ5c9FUe5PAoA4T4wfEb/AIQ/RxpumyqNavV+U/8APCPoZPr2X8+1eQfDXwA/ii6Ot6zvbTUkO1WJ3XT555/uj+I/hWVo9lqXxR+IE1xfSP8Av5DPdSDpFEONo/Daq19HW9tBZ2sNrawrDbwoEijXoijoK+bz/NnhIewpP35fgv8AM6sNR53d7EiqkcSpGqoiKFRFXAUDoABTs4rK8QahqOlaS17pmmf2jLGwMluJCreX3K4HJHpXCD446IqbZ9H1FJhwV3IcH6kj+VfGYfLcVio+0pR5vmjvdWEHZnqCjdVDS9Z0/Wop5dNuPtEcEpgkkVTt3jBO09xz1FeF+Lvi1qHiKFtPsIv7N0+T5ZSrbpJF9Cew9hXs3g630qz8IadFos/n2Hl7lm6GRifnLDsd3bt0rqxeUzweGVSv8UnolsvV9+yM4V/aTtHY3aKKK8U6jO0zXdP1ia9gsps3FjKYp4pF2sjA4zg9j2NaHNeKfFHUrbw346t9W0G/aHXPLH2yNFyvQbd3bLL1X6GrWn/HeI26rqmiO0w6vazYVv8AgLA4/OvoZ5FWqUo1sMrqS2e6/K67M5I4lJtSPYcA1x/jfwRZeKrDy22xX0S/6Nden+w3qv8AKqHhz4g6p4u1SKLSfDhi05ZB9ovLqY4VO+MADd6Dmu9ZVYbT0ri5cRllaLbtL1T++35Gycaqa6Hz14D8Zan8MvFk1nqEUi2TSeXf2h6jH8a+4/UfnX1haXcF/aRXdrKstvMgkjkQ5DqRkEV4L8VfB41jSm1e1j/4mFiv70DrLEOv4r1+lS/s/wDjhm8zwhfy5wGmsCx/F4//AGYf8Cr9Fy/HQxtBVI79Tyq1F0pW6Hv1FFFdxkFFFFABRRRQAUUUUAFFFFABTT1p1NPWgBV+7S0lLQAUUUUAFFFFABRRRQAUUUUAJXz9+0T4pLS2Hhe3fhR9rusepyEX/wBCP4ivf2O0ZPSvj6V2+InxekkZi0N/f9fSBP8ACNaic1Tg5y2WoJczsetfCvw0NA8Hw3Eqbb3UcTynuqfwL+XP/Aq7ntRx/Cu1RwB6CgdK/JcZiZ4mtKtLqz26cOSCSF9K8o+OEtnbaFZRC0tftt5OWM/kjzdiDn5sZ5LLXq1eK/Hnd9s0P+75UuPruFejw8r5hBev5MyxX8NmbpPw1hv/AIK6h4pYv/aCSNcQDd8vkRna4I9/mP8AwEVtfAvWHeHVNGdsomLqIemflb/2Wuw8M6vDD8DksGG5jpU65/hwQ+c/SvMfgeGHje4x0+wyZ/76Svu88w/NgKnOul18jy8JXjOr7r2Pfx0qK6u0sLK4vJfuW8TzN9FBP9KmrC8Z5/4QbXsdfsMv8q/McNBVK0YPq0vxPbm7RbPDPh/oJ+IXxI2aqzywv5l3eYYguo7Z92Kiq19ZL4D+Kr2cqrNb2N4BidQweFuRkHj7jV1HwDvY9P8AFGpyyKSrWWw46gGReaxfjNcrefEm7uUXCvFFx34QDmv1+VC9Jq3u2sfPqtH2nJfU+i9qRrsRVWJPuhVwMewFAqO23fZLff18pM/XaKkFfjc/iZ9BHYrzryr/AIGvnLxVYXHgH4hrdab+7jjlW8sz22k52/QHctfSbLvVl9a8r+MmkC88MQamq/vbGbY5/wBh+P8A0ICvouHMY6OJ9m3pLT59DLFQ56V+qPddE1WDXNDsdVtf9TdwrMvqMjOD9OlaVePfs866dQ8F3Wkyvuk024+QekUnzD/x4PXsNfoR44UUUUAFFFFABRRRQAUUUUAFRv1H0qSo5PvfhQA9fu0tIv3aWgAooooAKKKKACiiigAorA8TeMdD8I2a3Os3qQ7/APVxr8zyf7qjmvD/ABR+0NqV3ug8NWK2UfT7RcASS/gv3R+tAHs/j/WYtD8DazdvMsUv2SRIdzAEyMpCgfia+fPgbp4uPFV9fN0tbQ7f95yF/luri9WfxHrkT61q0t5couF8+4Ynr0C5/pXqPwGgVdN1u5/iaWKPPsAx/rXkZ5W5MvqNPy+9o3o03GpG6PXaKKK/Lz2BO1eZfG3R3vPC9pqUS5NjORJ7JJgZ/wC+gK9O7VDcW8F7aTWt1Es0EyFJI26Op6iu3AYp4XExrJbP8OpnVhzwaPn3TfGtta/C680d2b+0AzQQrzzG53M2fb5h/wB810vwL0l1j1XWJFwjBbWJvU53N/7LVqf4F2MmpF4dalisWbPktCGkA9A2cfpXpulaZZ6LpdvpthD5VtAu1E6n1JJ7knrX1md8QUMRhPY0Hdv10R5uEwPsqjlbd3Lgqve2iX9hdWUv3LmF4T/wIEf1qwKK+JhNwkpLoerLY+ZfBmpf8If44aLVMwxqZLS6OCfL5xnHswpWD+O/ieqwK3lXd0AAe0S9z/wBc16740+GGn+LLs6hBctYX7YEr+XuSXHAJGRz71d8FfD7TvBqyTJM13qEi7GuHXaFX+6q84z3r9BqcUYd4L3X7/bz9drHjxwH7/2lvI6843fL07UUUV+dt3PZCud8VaeupeGtXstvMltJs/3gNy/qK6LvVSVQ021vuuNp/HiunCzdOqprpZjS5k0eMfs/6zDpvje6s7mdIor20KrvYAGRWBUflur6iFfCSaZNdau9hax75fMZFXOM4z6/Suw0H4meNPBM62jXMstun/LpfqWGPYn5h+Br9cUk9Lng8krXtofX1FeTeE/jv4c1x4bXVVbSLtsLmVt0JP8Av9v+BD8a9WVldQytkHkEVRI+iiigAooooAKKKKACo5PvfhUlQyfeH0oAlX7tLSUtABRRRQAUUUUAFUNY1SDRdGvdUucmC0haaTb1wozgVfrjfipBNcfDDX0g++LUucf3VIZv0FAHy/Pcar8RvGE15eTfvZmZ2J5WGMdFHsOgrtrLw1oPh+H7RKsTFetxdMOvsDxXM/DWaMXd9Af9a8Ssv0B5/nVP4hR3MfiHdLIzQyIGhHYDoR+deZW562I9jzWX5nv4WNLDYNYrl5pX+40fF/i3T9Q0uTTrMyTEuCZTwvB7Z5Ndr8CGH9gawvcXMZ/NTWanwn0gfCS68VxajPfXj2QuYVVdkceCNykcklcMOval+A11/pGt2Rb70cUwH+6SD/6FXJnWGUMtnGHk/wAUcDxcsRiFUnue0UUUV+bHeFFFFABSNlV3N8q+rcCvOPiL8TV8Mu2k6Rsl1TH72VuVt89sd2/lXl9t4f8AHPjvdf8Al3l5Ex/19xLtT/gO4gflX0ODyGdWkq9eapxff+kck8Uk7QV2fSnnRf8APeL/AL+D/GnKyM21ZEZvRWBr5z/4U94y/wCfOD/wLj/xpr/CPxrbr5qWCuR0EVym78Pmrf8AsTBPbFL8P8yfrFT+U+kGVl+VuKK+ddB+IPifwXqP9n6utxcW0bbZbO8zvQf7DHlf5V75pWq2et6VBqWnyebbTrlT3U91Yeo715uY5RVwVpS96L2aNqVdT06l6iiivJNw71Wf/j7X8Ks1m6hci1guro9IInc/gpNb0I800kUup8wWupJpni9tQaNpI47lnKjgkZNekW+taB4mhW3donY/8sbhQG/D/wCsa5P4X+FrTxp43Gm6iJWtTBLNKY22sMDAIPP8RWq/xF8JWvgnxQdHs9Ra8AiWViY9jRluit6nGD/wKv1WrhI1UnezR5+EzGWHThypxfRmh4m8DQ2tpNfaYXAjG6SB+cL3IPtXpH7P/jW4vY7jwrfSNJ9nj86zdjyEBAZPwyCPxrn9JaSy8IQvqMjOUtmeQv12kEgH8OKx/gPDNN8UYHi+5DbTPJ/ukbf5stRgak5qUZu9uptm2Hp03CpTVuZXsfV1FFFdx5AUUUUAFFFFABUE33/wqeoZPvD6UASr92lpq/dFOoAKKKKACiiigAqKeGK5gkhmVXikUoyt0YHgipaKAPi/UbKbwF8RrizfdssrkqD/AH4W6H8UNdV4701dQ8Pm6i+Z7VvMBHdG4P8A7Ka6T9ovw1tfTfE0Kfe/0O5I9RlkP/oY/AV5W/jLUX0SDS4UVNsfkvJ95pB0A56ccVx16MpVI1Ibr8j1MHi6cKFSjV2e3qesfAvVo9d8Ka74Ku248p3iDf8APOQbXH4Mc/8AAq8/+Ft4+gfEuGzuvkaYyWUoPZj0/wDH1WsXT9A8YaeV1DTrLVLV1X5ZbdXjfH4YNZM97qKa01/dSy/2iJvOeWX7+/Odxz3zVV408TRnRTTumjz1GcGm0fXmaXrWV4c8Q2fijRYdTs5FO9QJo+8MmOVNaor8nq0p0puE1Zo9mMlJXQVR1fUBo+h3+pMu77LA8wHqQOB+dXqo6tp0es6Nd6XMzJHdRGNnTqM9xTocntI8/wAN1f0CV7Ox8+/DnQP+Ey8avNqm6eCLdd3W7/lqc8Kf95jzX0hGq/KiqqouFVVXAAHYCuL8B+AE8EfbZWv/ALXcXWE3LHtVUBz0yeSa7SvXzzHxxeItSleCWn6nPh6ThHVanjV/8dLiC/mitdCgaFHIUyyMGIHcgV3HgHxp/wAJrptzO9l9kmtnCMFYspDAkEE/TmtK78H+Gb64kubrQ7GWaRtzu0eCSe5xitHT9OsNKtfsun2kFpb7t3lxLgZPc0sVisunQ5KFJxnprf8A4IQhVU7t6HLfErwtb+I/Ct1cGNf7RsYjNBJ3KryyH2I/WuH+Bmsyi91HQ5GJikj+1RD0ZSA35g/+O17PLEk0MkD/ADJLGUf6EYNcN4L+GkHg/XZ9U/tBrtijRwr5e3ardS3Jya2wuYUv7Oq4au9fsinSftVOKO9ooor506wrhviTqg03wJqkm757rFsn/Azz/wCOhq7WZtsW1fvHgV4N8X/EkGoaha6NZzLJFZktOycjzTxt/AcV7mRYWWIxcXbRO7+RlXnyUm+rOj/Z7s4rFPEfia8/d21rbiPzPRRmST8gq15zHLP44+IM99dKf9LuTPKOuyMc7fwGFqrpaeK7/SG0zS/7TfTWYl4IN4iYnrux8p6d6igfXPCN/wCa1vLaysu0rLFw49Of6V+izmmnCLXMebQiozjOony3O1+IOp/ZdFSyRsPdNz7oOf54r0P9nrw19h8N3evzR/vdQk8uEn/nkhx+rZ/75rwy9u7zxr4ns4IIQk1y0dtDGGyAScfzOa+y9G0uDRdGstLthiC1hWFPcKMZP1qMLR9lSUXubZjivrFdyW2yNCiiiuk4QooooAKKKKACoZPvD6VNUMn3h9KAJF+6KdSL92loAKKKKACiiigAooooA8y+O19HZ/DC6iaNXN1cRQKT/Cc78j8EryD4UaDBMLnWriNZHifyYA38DYyW+vK4r13486fJe/DKeVBn7HcxTt9MlP8A2evL/hFfJJpF/p+797HKJgP9kjB/UV5mcSnHBzcDty+MJV1zno1YfiPwzp/iezaK6RUuQv7q5C/Mh9/Ue1bgoxXwtGtOjNTg7M+nqU4TTjJHifhDXb34f+M2tr0MluZPIvouxXPDj6dR/wDXr6U/3fmXsa+ePi3ZpFrdldqu154MP7lTjP5GvUvht4stvEnhi3t9wGo2MKQzxluWVRhZB6g9/Q16ueYf6zhqeOhHW3vHz9P91VlRbO1ooor5A6wooooAKKKKACiiigBKWiq9zOkMbMzKiqpZnZsBFHUk1UIuTsgOG+KPi1/D+grDaSbL69zHEy9UQfece/OBXnHw98Ex6qTq+qR77NWxDEf+WzDqT/sj9ay/iJ4nh8UeJfNtN32O2TyIS38YBJLY7ZJr2bRbNLDQbC0RdojgQfjjJP519vJSyzL4wgrTnuY4aCxGIbe0S4qrHGsaIqInARVwF+gFZOr6dbanbTWV1HvgmX/vg/3h7itiqN1IkcjSO21I13OzdgOTXh0JzVRSW57yjFxaa0PJvhk66H8XtJiuI0kZbt7U57MwZAR+Jr6/r4/+H0T+IPjFpc0S8G/N2R6KpMn9K+wK/SI3sr7nxU7cztsLRRRVEhRRRQAUUUUAFRyfe/CpKhk+8PpQBIv3RTqav3RTqACiiigAooooAKKKKAKWp6fb6rptzp92m+2uYmhkH+ywwa+Q9RsNX+FnjpoJFyYT+7Y8Jcwnv+P6Ee1fZArmvGHgvR/G2l/YtTh+dMmG4Th4ie4P8xUzipxcZK6ZUZOLTW55toPiLTPEdqsthMvm7f3luzfvEPuP6itZ8Rxs8reWi8l34AHuTXmevfArxfolyZdH8rU4AcpJBIIpR9VYj9CaxR8PPiTq0q2s2lao65/5eZcIPxZsV85V4cg53hOy+89eGbtQ95alTx1rQ8UeKILbTFaeKPFtBt6ysTyR9ScCp9e8NeJfhR4ktrpZcYwYL2Jf3cnHzIf5EGvZPhn8G4PCt2msa1JHd6qv+piQZjtz65P3m/l+tZfxp+JemxWtz4SsrW21C6b5bqSVd6W59F/6aD17fXp71KhThSVFL3UrHlVarnN1HuXfCvxK0TxHp7S3Vzb6beQrunhnkCr/ALyMeo9uorUPjzwmrbT4hsfwkJ/pXz5oPgPXfEEYuLe3WC0PS4uG2Kfp3P4CumX4NXePm1q1B/2Y2NeLLhCjVm5wuk+n/DkzzenS92clc9jtvGXhi6kVINf05nPQNMF/nitpRuVXHzIejLyD9DXz/c/BzVY491rqdnM/9xtyfqRisjT9c8WfDfUxBIJYY87mtJ/milHt2/Fa48XwfKEL0pO/n/mjWhm1Oq7J3PpjFFYXhLxVYeMNIF7ZfJImEnt2bLRMf5g9jXm3j34tSpPNpXhmUIqnZLfKcsx7iP0H+1+VfM4bKMViK7oJWa3v0PQnXhGHNc9a1DVdN0pd2paha2n/AF3mCn8jzWT/AMJ74S/6GGx/76P+FeGaZ8O/E/iH/Tbs/Z0l5869kO5/fHLGtj/hTV531u1/79tX11LguMo+/Jt+VkeXPOaUXbmR7APGfhmaNjDr+nPsUk/vgMAd8HFeNePPiLN4kkbR9GMqaczYZsHfdHPHHZfQfnUV98INat4y9neWd2R/AGMbfhuGP1rG8L6zd/DzxhHd3+jxTTQcSQXUeHQH+JD/AAt6Gu3CcOUcDU9o7t9L9BrMY4iPLTkP8U/D3WfCGiaVqWpx7Pt27fFjmBh0Vj6kc16h4J8Rwa/odvGJE+3W8Yjmh/iOBgOB3Br1NT4c+J/gz/n6068XkdHhcf8AoLqf8kV4H4j+B3izQrxp9EX+07UHckkDhJUHupI5/wB3NdOPwMMbT5JOzWxvhMU8PO6Wh6TO4t4md/lUd24H615T458bw3Fu+laXIJFk4nuB0Yf3V/qaqx/Dn4j606wzaXqJHreS7FH/AH2a9Q8CfAW10u4i1HxRLFfXCcpZR8wg/wC2T976dPrXFgskhh5+0m+ZnXiM1nVg4RVh/wABvAkukabL4m1KLZc3qbbVGXlIepb/AIFxj2HvXtdJ0pa9w8kKKKKACiiigAooooAKhk+8PpU1Ryfe/CgB6/dpaRfu0tABRRRQAUUUUAFFFFABRRRQAUUUUAcf8SfFB8I+Br7UomAu2xBbZ/56NwD+Ay3/AAGvm/4c+Fl8S6rPqepI01latucPz58jchSf1P8A9evT/wBpKd10PQrYfce5kcj3VQB/6FXIeBPF/hvQvCcNpeXvk3bSySSr5LN1OF5A9BW+HUXU996HJjp1I0X7NXb7Hpv91fuqvygLwFHoKK5b/hZPhL/oKt/4Dv8A/E0f8LJ8Jf8AQVb/AMB3/wDia9f2tPuj5r6rX/lf3HU1Q1rRbLxBpkmn3y5iPMcn8ULdmX/PNYv/AAsjwl/0FW/8B3/+Jo/4WP4S/wCgq3/gO/8A8TUynTlGzkio4fERkpRi015M8dafWfB2q6npsVw0Ezo9pcbOjofT69q7X4XeEobiP/hIb+NJFV9lpG/I3Dq5Ht2965r4iarpes+JlvtJn86J4EWR/LKfOMjv7Yr0Hw7458KaZ4Z0yxk1LypYbZVkTyJGw/Vug9TXm0KdJVm3Y9zF1K7wy5E7vc7pmZm3N8zUVy3/AAsnwl/0FW/8B3/+Jo/4WT4S/wCgq3/gO/8A8TXqe1p/zI8D6rX/AJX9x1NYXizwvB4q0hrdlUX0ak2s/cN/cJ/utVP/AIWT4S/6Crf+A7//ABNH/CyPCX/QXb/wGk/+JqZTpSjZtGtOjiaclOEXf0OW+B/ii48PeNhol0xW01JvJaNv4Jh9w/U/d/H2r6kr4v1PUrR/iV/amkyb7c38dxE+0rk7lY8Hn71faFeJJWk0fVQd4ptC0UUUigooooAKKKKACiiigAooooAKhk+8PpU1QTff/CgCVfuinUi/dpaACiiigAooooAKKKKACiiigAooooA8I/aV/wCQZ4e/67T/AMkrz/wv8MrfxD4dttUfVJYWmZ18tYAwGGx13Cvffih4I/4TnwsbW3dUv7aTzrVm6E4wUPsR+oFfNkZ8deDZJtNjj1Sx+bc0QjJXPqOCPxFaUpRi/fV0YYiFWULUpWZ1v/CmbT/oOy/+Aw/+Ko/4Uzaf9B2X/wABh/8AFVyf/CXePv8An71P/vwf/iaP+Eu8ff8AP3qf/fg//E10+1w/8pxewx3/AD8X9fI6z/hTNp/0HZf/AAGH/wAVR/wpq0/6Dcv/AIDD/wCKrk/+Eu8ff8/ep/8Afg//ABNH/CXePv8An71P/vwf/iaPa4f+UPYY7/n4v6+RT8aeF4/Cmrw2MV21yJIFl3tHs6kjGMn0rr9M+Ettf6RZXraxIjXMCTbPswONwzjO6sKz8E+OfHElzqn2C7uHVcme6/d+Zjoq7sZP0qvBq/jrQIxpsR1W1SBiogaFvk9hkVlCdLnba0OirSrypqMJWl1Ou/4Uzaf9B2X/AMBh/wDFUf8ACmbT/oOy/wDgMP8A4quT/wCEu8ff8/ep/wDfg/8AxNH/AAl3j7/n71P/AL8H/wCJrX2uH/lOf2GO/wCfi/r5HWf8KZtP+g7L/wCAw/8AiqP+FNWn/Qbl/wDAYf8AxVcn/wAJd4+/5+9T/wC/B/8Aiad/wl/j7/n81T/vx/8AWo9rh/5Q9hjv+fi/r5Gdq+jJ4f8AG50uOZphb3MYEhXBbO09OfWvtqvmL4afDDXPEHiWDXtftriCwimFwz3IIkuXByBg84z1Jr6dxiuSVrux6UU0km9RaKKKkoKKKKACiiigAooooAKKKKACoJvv/hU9QTff/CgCVfuinU1fuinUAFFFFABRRRQAUUUUAFFFFACUVFNNFbQSTSyLHFGpd2bgADkk15LdfEzxHrt1N/wiWm2w02Ftn2y9OPNPsMjH06/StKdGdT4TOrWhSV5M9forzbwx8Spbqx1tPEFolrqGjwmeWOD7sqDuuc859/4hXHw3fjDxbB/bNx4kl0iCZiba1tcgBc+2PzNRViqKbrPlRPto2TR7zRXl3w/8W6uPEFx4U8RzLcXiR+ba3Y4MyDsfXjkf8CzXqNEo2tZ6PU0hNTV0LRRRSKCiiigAooooASql/f22mafPe3koitoELyyN/Co6nirZNcQmmeJbbxderfTLq3hrVMo8LYDWeRgDb3U9Dj604pPcls6rStUs9Z0yDUbGbzbadd8b7SNw+h5q6a8stfHfhf4fWEPhiO5vdTksC6M9vEG2fOx2scgZGcHFdr4a8WaR4ssWudJuN4Q7ZI3Xa8ZPTctXKnJa20FGaelzfooorMsKKKKACiiigAooooAKKKKACoJvv/hU9QTff/CgCVfuinU1fuinUAFFFFABRRRQAUUUUAJUF3d29jbSXN1PHBBGu55JGCqo9yanryH4uyG68ReGtJvZGi0eZnkmO7AdwQBk+2f/AB6tKNP2k1Ezqz5IORD8Q/HeneI9Kh8OeG7/AO1XGoTrDM8aEBY/TJAzk+nbNTQWltp9lDawfJaWseA3sOWY/XrRBptjY7fsun2tvj7jJGMj6N1qw0CzRtE8fmo64dGXIYehr26NFUlZHzOMxTxDV9EjidFNrqa+JdUv7lLW0vYZYpJOphiAAQ4HPzOUAHfa1SeFfErLosNrcabfytbrsSa2gMiuvb8aW78L6dd+NrWwto/KtfK+030CN8oCngY7bq7u5u1s7Sa5lbZb28ZcpHwqhR0AH5V89nmJpKUcO48zevax6lD36aa0R5zbeJksfHket6lY3Vv5PlpFDt+dI8/MxBxkkbv++q9u8N+NND8VeYul3RaaMbnglUq6g98Ht9K8V0WB9WubjXdR/e3E8h8oSchcdxn06CluLi/0rxha3Whoiag9uUG1QRzkEkdK1jWoSq/VUrOMd76Kx6sMHVpYVYhvST266n0bXK+JPH/h/wALy/Z767Z7vAP2eBN8gB6Z7D8a8kfRtQcm7m1+/k1Ffn81Zmxu68c1u/D/AEuKfTZtdvF+0ahd3D5nm+ZsDjv6muLFY/C4fDyxClzqLSstNX/TNZYavGcac48vNqd94Y8eaJ4smlg0+WVLmNdzQzx7G2+o6g1e8ReK9G8LWqz6tdrFu/1cQG53/wB1Rya8015xo3xF8O6tF+683KTlV+8oOGz/AMBNN0C2i8W+ItU8V6in2hPtBhsI5eVRF6HHsNv47jVSxuHjgVmE01Brbre9rf10MIqftXQXxXOx0X4p+G9b1FLGOW4tppOIxdRbA59AQSPzqG9+L3hOzv2tftM8+xtrywQF4wfr3/CuP+J0cMml6bAkCNdyXG2LavOMYI+mStaVpodrp2kf2UkETp5ZSUso/eOR8zE/Wu3Kp0sfho4nlcU76X7fI4cdipYSp7PdnYaz4r8KXGjSQXXiG2ghvoCqvFP8+1hjcuOQayfDuhaRpXhTUrvwvrN7qchtpBG7XplAkCnGEGFBz7Vyun+C9F0+FVezS7m2/vJZ8nJ9l6AViawbvwNqTX+gN9nh1GBoJI1yQj9io9R1X0rveEtH3ZGFPMo1J8rRu/DOKzXwjHJaojXjyP8Aa36yZzwD3ximaLPFpnxpb+zdi281uI79I/u+YxAHTvuK/wDj1S6Z8PNOtbBPtc979vljzPNDcmP5jyQMenvXNaLqdl4M1PVo7ktdtZXWbOBUANzOAVRpG67UByB6tnrivl8qjQxGYV61Co5Ps1pq+9+nyPYxEpwoQjOKXmfRTukabnZVUdSTgUqsJFyrAg9CK8FutH1LxG39p+MtUlTfjy7GNvLjhB+6DngH26+pptrJP8OvEGm3Vhe3T6TdT+TdWcrbh9R7jORX0TwMuTmvqefHMacqnIe/0U1WV1VhyDyDTq4T0AooooAKKKKACiiigAqCb7/4VPUE33/woAlX7op1Iv3aWgAooooAKKKKACiiigBK5T4h6Tpmp+D759SVSlnG1xG/dWUHp9eldX3rj/iiksnw31tYfveSCf8AdDKW/TNXS/iR1Jn8DPN/A8P2fwtDLLu33Mhk+bnao+VcflWN441aZdVhsre5aJIYt7eWxXLN649q6fRJI5PD+mtD/q/syKPw4P61ynivwzqV9q7X9hD9pSZRlFYbkIGOh7V9FHe58nBxlWbeht/Di08vTb7UG+Z7iYRAt/EFGT+pq54+uzb+HFtk+/dTBP8AgK/Mf/Zao+BbkN4YWJG2vb3EiyD3Y5FU/Gc8smv6DbM3ybi/zepYD+lfEN8+cSlUXwtv7lp+h71KPNFU110Ni0thZ2lvbL/yxjCn69/1pyxwwztP92a4xEXb07ItU5b9oVkllZFRcsS1c3/bd3Nqun6nPH5WnvcPFb7mxkjhzj23Lk/hXFhcJWxcqlS9lq359bH3eNxFLBxp02rvRLy6XO42hvl/vVc+Hsi/8I9NZt/rbO6kRx9eRWL9t2/K0X/j1Q6PrC6L4wXeuy01VRE57JMPun8f/Zq4ZUniMHVw630kvWP/AALmea0Zp069tE7P5ml8T4D/AGbpt1Hu3xXDp8vX5h/9auo0HSxo+gWdh/HHHmT/AH25b9adfQW+oJClzGzLDcJcAf7SnIBrN8WeJk0HQ5rpf+PqX91br/tnv/wHrXmrF1cbg6GV01qpP8Xp+p431dUa08TLaxgzTr4g+JilfntNHjJHozr/APZn/wAdrppJEjjaWVtiIpd3bsByTXFeAP3Oj3N6ysz3MuwFv7qdf/HjWn4o+36loclnpsamWRh5gaQKSg5IBPFfrGGwkcPRhQh8MVb/AIP3nw+LquvXbl1JfDetvrsWozldkUc4SEd1Qrnn3p+tWSahd6HbP827UUf8FUs38qr+HbF9D0dbV9rXMkhkmKtkA9AoPfAqa2vPtnjm1tF2f6FaSzv7M+FX/wAdrLNanscHVqx6J2+4vBUva4uEVtc6/wC9Llu7V5l4X01NQ1zUvEdwu9RdyC1DdC+cl/8AgI6e9dvreoHTdD1C83bfJt3YfXGB+tc94eh+z+GtLiX/AJ9w592b5if1r5DgfDtqrV72X5tn0PElX2cIU0c5r2r2l74vhs9Qu3h0uxk3ybcnzJBz29TxVlp7jxfrVvdQWztYwSGKyibg3V0w447Kv3mPZV9TWVr/AIR1O41y4ubCFZobmTfnzAPLJ6hs1d0i1fwf440JrW4eafyna92/dKHOVUen9a+7rJ8jseHh/Zc0dT6Gs7f7JZW9tu3+TGqb26nAxmrNFFfPn0QUUUUAFFFFABRRRQAVDJ94fSpqgm+/+FAEq/dFOpq/dFOoAKKKKACiiigAooooAKguLeO6tpLeeNXhkUpIjdCpGCKnooA8Au9G1/wFqUtjawLqGkyuXtkkba+D/dJ7juP0qG/1LxBd2UiLpsWi27rskvtQnEYQHrtzyT/ugn0r326tbe8haC6gimibqkqBgfwNZ9t4Z0KyuVubXR7CG4XlZI7ZAw+hxxXfHHS5bNannzwFOU+ex4fJ4U1rwzaW+v6LbStYsoilhu1IeZR/y1dP4Ax+6P4flzyazvEOqLr1lCP7G1S31C3bdE0cZkU56jcO3pX0swVlwelYNz4L8P3UzSNp/lsevkSyRD8kYCuW9KdVVqkfeXVGrw/8rPBbbStZ1iW3tNWE8SSt+7s4kAurwjsqH7o9ZHwq9ea9WX4Z2174VuLLUVhS/nRBEYM7LMJykceedoydx6sWYmuw0vQNJ0RX/s3T7e2Z/wDWOi/M/wDvN1P41qdqcqiWlJcqOhqc9aruz5m1mHXfB223vpbeT+GNJVIkI9V/vKPUGtfSfCGo66sd34jle1s/vx2cPySP7t/d/n9KvxT2+rfFLX7zW7mJZtOl8mygnYBUVTgMAePf/gWa0tU8caRp8nkW8raneu21Le0/eFj/ALw/+vXgZria6r/V8DS9/rJLv26erO7D1JTpXr1HyLpc3Lu7trCykurqVYraFfnd+eBx+JryjxFqX9t29xrt+sqW5jMOj2fdhnDTv/sj9W4HQ1tpput+MtYWLUoFmlhbdHo8MhENvn+K6lH3f90ZkPota/xL8OroHgyxYym4lk1GI31xtCbwFYIqqPuxr0VBwPrzXXkWTQwE1Uqu9R/h/Xf7jmx2LdaDUF7qHaRZf2fotjZ/xRwjf/vN8x/nWQ3i20s/EV7p2oP5UMcgEUu3IU4G5Wx7966OWWKNZLh2T7Oi+aX7bMZz+VYnw80FfErX0t7uSK9aS6YqqncobYgYMCMZ83/vmvr6tRU4XZ8nhaHt5y5iG78X2e5bXSFbVb+TiKCCIkZ9+5/Csuwi1jw1q6680T6qs2+3vzbcqsrcmNGGd5XC5K8Z+XtXrNn8N7KFGimvZzbPxJbWsUdqko9HMah2HtuxXVHSbBtOXTvscC2arsWBYwEAHTAHTFeZisRTr03SmrxejPawuD9g+aD1PC9e16bxXp/9n2dpdadpoYS6hfXsZSOFF7cdee3UnaBVbT9bufDUC6X4h0+6gWDAin8v7qn5lVx2PNe1w+DtCgvIbr7K8skDb4fPnkmWJv7yh2IB96s6r4e0/V9r3ETLMFws8TlXX8R1/GsMD7DAQVKhG0TXF4d4rWq7s8Wk8baXI6xabFdaldvxHBFGfmP6n8hWh4N8O3+reJpLrUNj3hdftoTmOziUhhBkceYxC5X+FN2eXr0NPAViPkl1DVJIG+9CLgRK/s3lqpP510djp9npdnHaWFtFbW0fCxxKFUfgK6a+N5laJlh8DCk7luiiivPPQCiiigAooooAKKKKACoJvv8A4VPUE33/AMKAJV+6KdTV+6KdQAUUVT1O7ex06e6itJbp41yIIvvP7CgC5RXn2l/EyTVNbk0qLwrq63EMiJc7lX9xuPBbnpUnhX4naTrmiwXmqXFlpVxPK8cdtJcglguBnkD1oA72iuZtPFUL6xrtre/ZLS10ry83LXaHIYZJdf4OfWtPStf0nXY5H0vULa8WNtr+TIG2/WgDTorlNN8Z2U76h/aUllYJbX7WULm9STziOnT7rH+71q4fGvhlbQ3Ta7YfZ1l8kyeeMb+uKAN+isbUPFGg6SsBv9Ws7cXC74vMmA3qf4h7e9PvvEmi6Yls99qllbpdf6lpJgBJ7j296ANaislfEmimyuL0apZ/ZrZ/Lnl84bY2/uk+tT6XrGna1a/adMvoLuHOC8EgcA+hxQBforlNL8aWFzol1qWqTWWnwW95Ja7jepIrbenzD+Ig/d61uWGradqlh9usb6C5tOf30MgZOOvI9KAOU8XfDew8T366hiBLraEkMsZYSAdM7WU8VW0j4XW1iuLi+8uFhhoNNg+yhx6PJuaUj/gYrpYvGHhqe4t7eLXbB5bn/Uok6nfzt4/EYqS98VaBpt+the6xZW92cfuZZgrc9M+lae2nblvoZ+yje9i7p2mWWk2aWmn2kVrbp92OJQo/SoNc0W01/RbnS72PfbzptPHIPZh7g81l+NPFp8IadY3gshd/ar2O02eZs27gx3Zwf7tXr3xVoOm362F7rFlb3bY/cyzBW56Z9Ki7vfqXy9DyCf4aa1a/8S6WTWbvT93yW9q0WyTH/TRnGwfVfzr1Twl4fbQ9OYzrEt3Pt3pDnZCijbHEmeSqjuepLHvVu/8AFOhaXPLBe6tZ280KB5I5JgGVSQAcfjSz+KdCtdOt9RuNWs4rK54gnaYbJPoa1qV5zVmZwowhsjZorKi8Q6NNBeTxapZvDZnbcyLMu2Ej+8c8VBF4s8P3GmTalFrNk1nCwSSfzhtQnoGPbNYmpuUVn2GrafqkM01heQXEUMhikeJwwRgASCfbNVLLxX4f1CeWCz1mxuJYULyJFOrFVXqeOwoA26KyU8RaM1raXS6naNBeSeVbSCUbZnzjap7nIpkXinQJ9V/suHWLJ7/cV8hZgXyOox60AbNFedf8LLKS6XG2lwSNfawdLzDerIIwCoDnap5w/wB3iusbxRoI1f8Ask6xZjUN+z7N5437v7uPX2oA2aK4bSfiRptzqOt22ry2mlrp9+9nE8twP320sN3IGOlaKeLhJ4/bwwtmuwWH237X5/BGQMbce/XNAHUUVkab4l0TWLqS107VrO7njGXjhmDkD14rXoAKKKKACoJvv/hU9QTff/CgCVfuinU1fuiqV9q+naZLaxXt3FbvdSeVAJGxvf8Auj35oAv0Vj6h4j0nS7iS2vL6OO4SA3Jh5L+UASW2jn+FquadqFtqum29/ZyeZbXEYljfaRuU8jg80AcV4R06+tfiZ4zup7S4it7loPJmkjKrLgHO1iMHHtXnlt4Ou/8AhR18j+Hbj+3GvQ6I1kftGNyDIG3djbur3B9e06LXBoz3G2++zG72Mpx5QOC27G39atWd/Z6laLdWN3BdW752zQSCRDjrhhxQB4tN4avbqXxut/omry29wtm0f2aLEkpUcmPcMPg9RXSfDhNZHiPVZby2eexaJBHqVzposp5WGMIVwNwA71302r2MFtJcPcqYo22sU+ba3TBxmrwYMM02mt0SpwbsmeAXfhrV7iO6hfRL94pPF3nMjWjEPAd2X6fc9+lbl34SLat8R2j0BtklpH9gZbTh28sk+V8vJ3f3e9ezZFJkeopFXPBYrLxCtpaWEuh3lqv9hiGKe20tZpp22/NFK8inyxntT9J0vUNI1TwhqOo6Be6lCmlNaGyWAGa3l8x/mMbkYGD1Ne23l9BZRq87bA7hAdpPJ6dKzda8LaH4j8ltVsUnkhz5cgdo5Ez1AdSG/WnZ2uTzRu1c8P0vRL/UPBt49hYy+XZeKPOmtbZRKyRqoHyIcq5XPSvSvh/pjR6xrer7dXxdmMNLqFslt5xUfeWJVGMeuOa7TS9K0/RbFLLTLSK2tU6Rxrgc96vZB70ijwKw8O3sXhKR73Ttctbi38QS3EMttab3hBSMCQwsMunHau4+H0Wr/wDCMa3/AGjpqQNNNKYZlshbS3YIP7x4hjBNei5HrRkeooC54AvhK+h+FXhvyvD90msJrAkuCtownWPMnzN8u7HCdfarmq6XfWH/AAmek3fh2/1LUNZuvNsbuG28yMqxyuZP4dle6ZBrFtfFGj32u3Gi2t55t/bKTLGsbYTBwQXxtz7ZoA4Tx5oerN8PPCunLBcX97Z3tp9o8iIyn5YnDMcZ4z3rA1bS76w/4TPSbvw7f6lqGs3Xm2N3DbeZGVY5XMn8OyvdKKAPHdE8JXi/EKZNb01ryCHw7HB9plhMkTzgRqQrkYLfe965nQdG1bR4vBmo6joV/dw2b3KS6cIP36lidriNsHHOfT5a+iKx9a8M6N4jSJdWslufJJMT7mRkJ67WUhh09aAPC7TRL/V/D/i+DS9PliWDxAk0ljEqM3lqZMxqvKnbleP9mr2u6DfapofiK/sLTxDdTTw28OLmwWDzisqH5Yo0DEqA3OK9s0fRNN0Ky+yaXZxWsGclU7n1JPJP1rSoA5mbTjpfgS4tdI0uBrj7EQlp5YCyvsxhhxnPevMfD9hq934w8HXU+l6jHbwxzpcI2li2gtiYyCg2qDjnq34d690rM0nXNP1tLp7CYyrbTvbS/IV2yL94cgUAeT+GvDWrweL7PRJ9NuF0nw/c3l5ayvGRFcbtvlAOeCQTmsZLDxDevoPnaJf201trkctxa22kiK3gAb74kC72yOpzj9K97u7u30+zmu7qRYbeFS8kjdFA6mqui63p3iDT1v8AS5zPbMxAfy2TJHswBoA8O0nw7rkZ0IPo1+hi8XPcSBraQbIf3P7w8cLw3PSn6nY+ItSt5kk0K9tbpNZSaSzstLUQhc/63zQu9z7g19A0UAeAT6fe2a/EGO58JajdS6rfzJY3CWhfku5UjIzt53Ajr+VXYPCfiJdWksvslwkreERZCfYfK87A/deZ93PbrXuVFAHivg7SLltW8OvPaa8t1o9u6yJLYRW8MJ27WTeFBl3duT6+ter6Jqc2saTDez6fdafJJnNvcrh0wccj3pJtd0uCPUGa/gY6fH5t2iSBnhAGfmUZI4FWNO1C21XTbe/s5PMtriMSxvtI3KeRweaALlFFFABUE33/AMKnqCb7/wCFAEq/dFcJ8WtJfUPAdxd23/H3pkiXsTr1XZ94/wDfJY13a/dFRyxRzxNFKivG4IZWXIYHqCKAPFbS+fxLF458bQM6LHpn2OykXKlCIg0mPQg7azbu71SbTNFuX1KW/t49FSSSxj1Y2k8bd5+fv/r9K9yg0XSrbT5NPt9Ns4bKXPmW8cCrG+euVAwc1WuvC+gX0NvFdaLp08VsuyBJLZCIx6KMcD2oA8n0/UpfEXiq1gXUtUayufDLt++kKSswZl3HGBnjrjmug+CMVr/wgP7m9eW4eRxND52fJ+ZtuF/hyOfevQ00nTYbtLyOwtUuUi8lJlhUSKn9wNjOPalstM0/TzM1lZWtq0zb5TBGE3n1bAGaAZ56pFrouqmK6lE6XOzb5nO3I+bH9a0p1murvXS15dILaJXjWOQgA7Sa7CTTbGUyGS1hcyfeJjB3fWl+w2oMx+zxfvhiT5B846YPrXfLGJ3dtf8Ahv8AI8WGVzTS5tP+H/zRx8ep3NhHpWpzzyvFNbNHIpYkbwCVOPU1CHuIX0OK7vriMTq7zN5hGc9ATXSap4ei1I20Bm8myhOTbxxgAn69utWLvRbe71C1uX+7bqyCPAKsCMc01iKX5/rb8yJYHEaq+itb8L/l+Zxct7cJbvDDdStbR6giRy+YckYbIz6dKtmcXB1K5vtVms7mC42RBWJ2qDxhM85rsRpliIFhFpD5StuCeWMA+uPWll06ymuFuHtIHmHSRkBP50pYqD6f1oXHLasdXK/l9/5X0MjxBqrR6NdrZTZu4lXft4ZA3fHasw3CWMd0dO1WWeX7H5hibLgH+/u6A+1dd9lg3O3kx5kGHO0fMPf1pltYWlpu+z20UO7rsUDP5VjGtGMbWOirhKtSfNzdLddPQ4m2uXguNKa2vZ53uoWNyrTFsHbnOO2Of++aitjdmw0i7+33fmXFwYX/AHnG0tjv3ruoNMsbZmeG0gjZuGKoBkUDT7NUjQWsISI7kHljCH1HpWv1uPRf1r/mc6y2p1l+fl/k/vMPw4ZYNX1WxaaWWKIoU81txGc968i02K88P6X8RdS0i8vGvLK9e2QtMW+QykNIw7yBR96vfY7aCKWSZIY0kk++yqAW+pqGDStPtWujb2NtE10xe4McKr5zHqXwPmPPeuWrPnlzWPTw1GVGnyt31Z4pe376NcwweHfEF7qEN74fuZ77ddmXy2WF2WUHPyNurvfhZYynwjZ6xd6lf3l3fQr5n2mcuqBWYKFB6e/rXS2nhjQdPiuIrPRrC3S4UpMsdsgEinqrYHI9q0LW0t7G1jt7OCK3gjGEjiUKqj2A4rM3PnjS59YbwRoOujxFq630uuixBa5LqEYHPynOTx3rR1rUta8Kal450vStU1KaG2gtnjkuJzLJHv8AL3sGPT77c17Unh7RY7SO0j0mwW2im86OFbZAiSD+MLjAb3qX+ydNF1cXX2C1Fxcrsnm8ld0q4xtdsZIx60AeJalqEuh6lcWXhzXb2/s7nw/Nc3TNdmXyXEbFZQ2flJO3p/eqa8bVNJ+HOgahFq2oyy65PapfTz3pUJGA2FWTB8oHPLV6/aeGNBsIbiCz0awghuBtmSO3UCQejDHIq0dKsG07+zmsbU2O3Z9m8oeXt9NuMUAcT8PDqMWsa3Zz30EtlG0bwWq6g149qSPmUuwBw3UV5vFqmrT3tparrN/D5/i6S2Lx3JyEJjGBnI4z06V79p2lafpFt9n06xgtICcmOCMIM+vFVx4e0RZFddGsFdLj7SrLbJlZv+eg4+9x160AeNXttPbw/EXw+2qajPY2FvFPAJ7ku6nG4gk9jnmnaeDHJ4I0K+1a9tNDvdON5JJ9rMfmTlT+738bVXC4H+1XtD6NpbvdO+m2bPeLsuWaFSZgOgfj5vxpl1oGj32nxWF1pdlNZw48qCSBTGmOm1cYH4UAeG/21rN1oem2ceuX/wBmHiY2NtfRznzJYDjHzfxYz3rf1DSZ3+Id14bi1vV4tPg0IyjZdncWDZBJr1T+xNJ+z2tudLs/ItWD28fkLthYdCgxwfpUraZYNetfGxtTdvH5JnMQ8xk/ulsZx7UAeGafd6tDofgTxKdd1GW8vdSFnOjz5iaISsmNv+6vJqOXxPPPf6Zrml32oL9q1pIfOudUDO8Z+9H9mA2qn3ea9wXQdHW3tbYaTYLBaSeZbx/Z12wtnO5BjCnPpUf/AAi+gee039iab5ryCZn+ypkuOjdOoz1oA8a8i303xV8R2j1S6ivYLR3tka5IaTdGzMcdW29vSn6RfPrWraLpviHW7yw0yPw+lzE63Zi86YkZYtn5iPm/75r2i50TSb24a5utMs553jMTSywKzMhHKkkZx7VFdeGdDvbW3tbrR7Ce3t+IY5LZWWMeijHFAHimj6rr2vr4Ctb3VtSgF3JdwyTRTlJJo1xgk9z1GT/Oup8Da3F4c1bxhp2razL/AGXpt7FFbTX85Ypv8wbdx/3R/OvSjpGmNJayHT7TzLQYtn8lcwg8fIcfL+FRtoWkM1w7aXZlrl1kmP2dcyspyrNxyQemaANOoZPvD6VNUE33/wAKAJV+6KdVVZ22rwP1p/nN7UAT0VB5ze1HnN7UAT0VD5h9BSpIW64oAloqEykdAKd5h9qAJKKh8w+gp28+goAkoqPzD7U7JoAdRTcmjJoAdRUfmH2p2TQA6iofMPoKd5h9qAJKKbk0ZNADqKbk0ZNADqKbk0ZNADqKbk0ZNADqKbk0ZNADqKj3n0FHmH2oAkoqHzD6CpMmgB1FNyab5h9qAJKKh8w+gp3mH2oAkqCb7/4U/efQU0uc9B+VAH//2Q==\"}]}"},{"id":2220,"title":"Wayfinding 3 - passed areas","description":"This is the third part of a series of assignments about wayfinding. The final goal of this series is to be able to calculate the fastest route through a terrain of areas with different properties. The assignments will build on top of each other, gradually increasing the complexity, but guiding you stepwise towards the final goal. You can re-use code from preceding assignments to save some work. See \u003chttp://www.mathworks.com/matlabcentral/cody/problems/2218-wayfinding-1-crossing [1]\u003e\r\n\u003chttp://www.mathworks.nl/matlabcentral/cody/problems/2219-wayfinding-2-traversing [2]\u003e . \r\n\r\n*Which areas are traversed?*\r\n\r\n\u003c\u003chttp://i58.tinypic.com/263wzdt.png\u003e\u003e\r\n\r\nFor this third assignment in this series you have to calculate which areas are traversed and in which order, while going from A to B. Our path from A to B is a straight line. And the area boundaries are closed polygons consisting of a finite number of straight segments.\r\n\r\nIn this assignments, the areas do not overlap. If an area is crossed twice, it is listed twice in the returned vector. And if |AB| crosses first for example area |F2|, then |F3|, and then |F2| again, the output vector should contain |[ ... 2 3 2 ... ]|. Simple.\r\n\r\nThe inputs of the function |WayfindingPassed(AB,F)| are a matrix |AB| of two columns, each with x-y coordinates, of our straight path from A (1st column) to B (2nd column), and a cell array |F| of 2-D matrices with columns with x- and y-coordinates, each column a subsequent node of the polygon boundary of the area. The last node is implicitly connected to the first. The index of each area, to be referred to in the output vector, is equal to its position in the cell array F. \r\n\r\n AB = [\r\n   xA xB\r\n   yA yB\r\n ]\r\n\r\n F = {\r\n  [ x11 x12 ... x1n ;\r\n    y11 y12 ... y1n ]\r\n  [ x21 x22 ... x2n ;\r\n    y21 y22 ... y2n ]\r\n }\r\n\r\n\r\nYour output |v| will contain the indices in |F| of the crossed areas, in the correct order. In the example above, the correct answer is |[ 3 4 4 1 1]|. Crossing means 'being present in that area', so if A, the start, is in area 3, it is considered as 'crossed'. If you pass the same area multiple times, and leave it in between, each event is listed.\r\n","description_html":"\u003cp\u003eThis is the third part of a series of assignments about wayfinding. The final goal of this series is to be able to calculate the fastest route through a terrain of areas with different properties. The assignments will build on top of each other, gradually increasing the complexity, but guiding you stepwise towards the final goal. You can re-use code from preceding assignments to save some work. See \u003ca href = \"http://www.mathworks.com/matlabcentral/cody/problems/2218-wayfinding-1-crossing\"\u003e[1]\u003c/a\u003e \u003ca href = \"http://www.mathworks.nl/matlabcentral/cody/problems/2219-wayfinding-2-traversing\"\u003e[2]\u003c/a\u003e .\u003c/p\u003e\u003cp\u003e\u003cb\u003eWhich areas are traversed?\u003c/b\u003e\u003c/p\u003e\u003cimg src = \"http://i58.tinypic.com/263wzdt.png\"\u003e\u003cp\u003eFor this third assignment in this series you have to calculate which areas are traversed and in which order, while going from A to B. Our path from A to B is a straight line. And the area boundaries are closed polygons consisting of a finite number of straight segments.\u003c/p\u003e\u003cp\u003eIn this assignments, the areas do not overlap. If an area is crossed twice, it is listed twice in the returned vector. And if \u003ctt\u003eAB\u003c/tt\u003e crosses first for example area \u003ctt\u003eF2\u003c/tt\u003e, then \u003ctt\u003eF3\u003c/tt\u003e, and then \u003ctt\u003eF2\u003c/tt\u003e again, the output vector should contain \u003ctt\u003e[ ... 2 3 2 ... ]\u003c/tt\u003e. Simple.\u003c/p\u003e\u003cp\u003eThe inputs of the function \u003ctt\u003eWayfindingPassed(AB,F)\u003c/tt\u003e are a matrix \u003ctt\u003eAB\u003c/tt\u003e of two columns, each with x-y coordinates, of our straight path from A (1st column) to B (2nd column), and a cell array \u003ctt\u003eF\u003c/tt\u003e of 2-D matrices with columns with x- and y-coordinates, each column a subsequent node of the polygon boundary of the area. The last node is implicitly connected to the first. The index of each area, to be referred to in the output vector, is equal to its position in the cell array F.\u003c/p\u003e\u003cpre\u003e AB = [\r\n   xA xB\r\n   yA yB\r\n ]\u003c/pre\u003e\u003cpre\u003e F = {\r\n  [ x11 x12 ... x1n ;\r\n    y11 y12 ... y1n ]\r\n  [ x21 x22 ... x2n ;\r\n    y21 y22 ... y2n ]\r\n }\u003c/pre\u003e\u003cp\u003eYour output \u003ctt\u003ev\u003c/tt\u003e will contain the indices in \u003ctt\u003eF\u003c/tt\u003e of the crossed areas, in the correct order. In the example above, the correct answer is \u003ctt\u003e[ 3 4 4 1 1]\u003c/tt\u003e. Crossing means 'being present in that area', so if A, the start, is in area 3, it is considered as 'crossed'. If you pass the same area multiple times, and leave it in between, each event is listed.\u003c/p\u003e","function_template":"function f = WayfindingPassed(AB,F)\r\n  f = 1:length(F);\r\nend","test_suite":"    %%\r\n\r\n    AB = [ 2 -2 ; 8 -6 ];\r\n    F{1} = [\r\n        -4   -4    4    4\r\n        -4   -0   -0   -4\r\n        ];\r\n    F{2} = [\r\n        -4   -4    4    4\r\n        2    6    6    2\r\n        ];\r\n    f = WayfindingPassed(AB,F);\r\n    f_correct = [2 1];\r\n    assert(isequal(f,f_correct));\r\n    \r\n    %%\r\n\r\n    AB = [ 8 -4 ; 8 -8 ];\r\n    F{1} = [\r\n        -6    2    2   -4   -4    8    8   -6\r\n        -6   -6   -4   -4    2    2    4    4\r\n        ];\r\n    F{2} = [\r\n        -2   -2    4    4\r\n        -0   -2   -2   -0\r\n        ];\r\n    f = WayfindingPassed(AB,F);\r\n    f_correct = [ 1 2 1 ];\r\n    assert(isequal(f,f_correct));\r\n    \r\n    %%\r\n\r\n    AB = [ -8 8 ; 8 -8 ];\r\n    F{1} = [\r\n        -2   -2    0    0\r\n        -0    2    2   -0\r\n        ];\r\n    F{2} = [\r\n        2    4    4   -6   -6   -4    2    4    4    2    2   -4   -4    2\r\n        -0   -0   -6   -6    4    6    6    4    2    2    4    4   -4   -4\r\n        ];\r\n    F{3} = [\r\n        -3   -3    1    0\r\n        -1   -3   -3   -1\r\n        ];\r\n    F{4} = [\r\n        5    9    9    5\r\n        -3   -3   -9   -9\r\n        ];\r\n    F{5} = [\r\n        -9  -10  -10   -9\r\n        9    9   10   10\r\n        ];\r\n    f = WayfindingPassed(AB,F);\r\n    f_correct = [ 2 1 2 4 ];\r\n    assert(isequal(f,f_correct));\r\n    \r\n    AB = [ 0 0 ; -8 8 ];\r\n    F{1} = [\r\n        -4   -2   -2   -4\r\n        8    8    4    4\r\n        ];\r\n    F{2} = [\r\n        2    4    4    2\r\n        -0   -0   -6   -6\r\n        ];\r\n    F{3} = [\r\n        -4   -2   -2   -6   -6\r\n        -4   -4   -6   -6   -4\r\n        ];\r\n    f = WayfindingPassed(AB,F);\r\n    assert(isempty(f));\r\n    \r\n    %%\r\n\r\n    AB = [ 7 -8 ; 0 0 ];\r\n    F{1} = [\r\n        8    9    9    8\r\n        3    3   -2   -2\r\n        ];\r\n    F{2} = [\r\n        -9   -7   -7   -4   -4   -3   -3    0    0    1    1    4    4    5    5   -2   -8   -9\r\n        -2   -2    2    2   -2   -2    2    2   -2   -2    2    2   -2   -2    3    4    3    2\r\n        ];\r\n    F{3} = [\r\n        -2   -1   -1   -2\r\n        1    1   -4   -4\r\n        ];\r\n    F{4} = [\r\n        -6   -5   -5   -3    1    2    2    3    3    1   -4   -6\r\n        1    1   -3   -5   -5   -4    1    1   -5   -8   -7   -4\r\n        ];\r\n    f = WayfindingPassed(AB,F);\r\n    f_correct = [ 2 4 2 3 2 4 2 ];\r\n    assert(isequal(f,f_correct));\r\n    \r\n    %%\r\n\r\n    AB = [ 0 -2 ; 0 -4 ];\r\n    F{1} = [\r\n        -3    3    3    2    2   -2   -2    2    2   -3\r\n        -5   -5    3    3   -3   -3    2    2    3    3\r\n        ];\r\n    F{2} = [\r\n        -1    1    1   -1\r\n        1    1   -1   -1\r\n        ];\r\n    F{3} = [\r\n        -4    4    4    5    5   -5   -5   -4\r\n        4    4   -7   -7    5    5   -1   -1\r\n        ];\r\n    F{4} = [\r\n        -5   -4   -4    4    4   -5\r\n        -1   -1   -6   -6   -7   -7\r\n        ];\r\n    f = WayfindingPassed(AB,F);\r\n    f_correct = [ 2 1 ];\r\n    assert(isequal(f,f_correct));\r\n    \r\n    %%\r\n\r\n    AB = [ -2 0 ; 6 -6 ];\r\n    F{1} = [\r\n        2   -4   -4    2    2   -2    0   -2    2\r\n        -4   -4    4    4    2    2   -0   -2   -2\r\n        ];\r\n    f = WayfindingPassed(AB,F);\r\n    f_correct = [ 1 1 1 ];\r\n    assert(isequal(f,f_correct));","published":true,"deleted":false,"likes_count":1,"comments_count":5,"created_by":6556,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":16,"test_suite_updated_at":"2014-03-03T12:10:50.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-02-25T23:45:22.000Z","updated_at":"2026-02-19T10:36:52.000Z","published_at":"2014-03-03T09:46:27.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.JPEG\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThis is the third part of a series of assignments about wayfinding. The final goal of this series is to be able to calculate the fastest route through a terrain of areas with different properties. The assignments will build on top of each other, gradually increasing the complexity, but guiding you stepwise towards the final goal. You can re-use code from preceding assignments to save some work. See\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.mathworks.com/matlabcentral/cody/problems/2218-wayfinding-1-crossing\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e[1]\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.mathworks.nl/matlabcentral/cody/problems/2219-wayfinding-2-traversing\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e[2]\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e .\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eWhich areas are traversed?\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFor this third assignment in this series you have to calculate which areas are traversed and in which order, while going from A to B. Our path from A to B is a straight line. And the area boundaries are closed polygons consisting of a finite number of straight segments.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eIn this assignments, the areas do not overlap. If an area is crossed twice, it is listed twice in the returned vector. And if\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eAB\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e crosses first for example area\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eF2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e, then\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eF3\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e, and then\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eF2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e again, the output vector should contain\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e[ ... 2 3 2 ... ]\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e. Simple.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe inputs of the function\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eWayfindingPassed(AB,F)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e are a matrix\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eAB\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e of two columns, each with x-y coordinates, of our straight path from A (1st column) to B (2nd column), and a cell array\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eF\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e of 2-D matrices with columns with x- and y-coordinates, each column a subsequent node of the polygon boundary of the area. The last node is implicitly connected to the first. The index of each area, to be referred to in the output vector, is equal to its position in the cell array F.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[ AB = [\\n   xA xB\\n   yA yB\\n ]\\n\\n F = {\\n  [ x11 x12 ... x1n ;\\n    y11 y12 ... y1n ]\\n  [ x21 x22 ... x2n ;\\n    y21 y22 ... y2n ]\\n }]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eYour output\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ev\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e will contain the indices in\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eF\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e of the crossed areas, in the correct order. In the example above, the correct answer is\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e[ 3 4 4 1 1]\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e. Crossing means 'being present in that area', so if A, the start, is in area 3, it is considered as 'crossed'. If you pass the same area multiple times, and leave it in between, each event is listed.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.JPEG\",\"contentType\":\"image/JPEG\",\"content\":\"data:image/JPEG;base64,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\"}]}"},{"id":2239,"title":"Avalaible area: wall construction","description":"You need to build a wall to enclose a certain area. Calculate the available area after you build the wall. \r\n\r\nAssumptions\r\n\r\n* Wall could consist of multiple layers of material. example: a wall of 2 materials: rock of 1 meter thickness and wood of 0.5 meter thickness. The total thickness of the wall 1.5 meters.\r\n* x and y: the dimensions of the area before the wall is build. example: x=5m,y=4m. Total area 20m^2.\r\n\r\nExample\r\n\r\nArea of dimensions x=5m,y=5m and wall of 3 materials with thicknesses: 0.2m,0.1m,1m . Avalaible area after the wall is build : 5.76m^2\r\n\r\n \u003e\u003e AvailableArea(5,5,0.2,0.1,1) \r\n \u003e\u003e ans=5.76\r\n","description_html":"\u003cp\u003eYou need to build a wall to enclose a certain area. Calculate the available area after you build the wall.\u003c/p\u003e\u003cp\u003eAssumptions\u003c/p\u003e\u003cul\u003e\u003cli\u003eWall could consist of multiple layers of material. example: a wall of 2 materials: rock of 1 meter thickness and wood of 0.5 meter thickness. The total thickness of the wall 1.5 meters.\u003c/li\u003e\u003cli\u003ex and y: the dimensions of the area before the wall is build. example: x=5m,y=4m. Total area 20m^2.\u003c/li\u003e\u003c/ul\u003e\u003cp\u003eExample\u003c/p\u003e\u003cp\u003eArea of dimensions x=5m,y=5m and wall of 3 materials with thicknesses: 0.2m,0.1m,1m . Avalaible area after the wall is build : 5.76m^2\u003c/p\u003e\u003cpre\u003e \u0026gt;\u0026gt; AvailableArea(5,5,0.2,0.1,1) \r\n \u0026gt;\u0026gt; ans=5.76\u003c/pre\u003e","function_template":"function A = AvailableArea(x,y,varargin)\r\n %A=..\r\nend","test_suite":"%%\r\ny_correct = 64;\r\nassert(isequal(AvailableArea(10,10,1),y_correct))\r\n\r\n%%\r\n\r\ny_correct = 3844;\r\nassert(isequal(AvailableArea(70,70,1,2,1),y_correct))\r\n\r\n%%\r\n\r\ny_correct = 49;\r\nassert(isequal(AvailableArea(9,9,1),y_correct))\r\n\r\n%%\r\n\r\ny_correct = 3900;\r\nassert(isequal(AvailableArea(75,70,1,3,1),y_correct))\r\n\r\n\r\n","published":true,"deleted":false,"likes_count":2,"comments_count":0,"created_by":24008,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":72,"test_suite_updated_at":"2014-03-10T20:27:07.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-03-08T16:23:45.000Z","updated_at":"2026-02-19T10:38:26.000Z","published_at":"2014-03-08T16:24:08.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eYou need to build a wall to enclose a certain area. Calculate the available area after you build the wall.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eAssumptions\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eWall could consist of multiple layers of material. example: a wall of 2 materials: rock of 1 meter thickness and wood of 0.5 meter thickness. The total thickness of the wall 1.5 meters.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003ex and y: the dimensions of the area before the wall is build. example: x=5m,y=4m. Total area 20m^2.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eExample\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eArea of dimensions x=5m,y=5m and wall of 3 materials with thicknesses: 0.2m,0.1m,1m . Avalaible area after the wall is build : 5.76m^2\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[ \u003e\u003e AvailableArea(5,5,0.2,0.1,1) \\n \u003e\u003e ans=5.76]]\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":2308,"title":"rectangle in circle ","description":"In the figure below, the rectangle at the corner measures a cm x b cm. What is the radius of the circle in cm? \r\n\r\n\u003c\u003chttp://www.syvum.com/iosundry/contrib/teasers/circle1a.gif\u003e\u003e","description_html":"\u003cp\u003eIn the figure below, the rectangle at the corner measures a cm x b cm. What is the radius of the circle in cm?\u003c/p\u003e\u003cimg src = \"http://www.syvum.com/iosundry/contrib/teasers/circle1a.gif\"\u003e","function_template":"function y = your_fcn_name(a,b)\r\n  y = x;\r\nend","test_suite":"%%\r\na=6;\r\nb=12;\r\ny_correct=30\r\nassert(isequal(your_fcn_name(a,b),y_correct))\r\n\r\n%%\r\na=7;\r\nb=14;\r\ny_correct=35\r\nassert(isequal(your_fcn_name(a,b),y_correct))\r\n\r\n\r\n%%\r\na=3;\r\nb=6;\r\ny_correct=15\r\nassert(isequal(your_fcn_name(a,b),y_correct))\r\n\r\n%%\r\na=5;\r\nb=40;\r\ny_correct=65\r\nassert(isequal(your_fcn_name(a,b),y_correct))\r\n\r\n%%\r\na=5;\r\nb=90;\r\ny_correct=125\r\nassert(isequal(your_fcn_name(a,b),y_correct))\r\n\r\n%%\r\na=12;\r\nb=54;\r\ny_correct=102\r\nassert(isequal(your_fcn_name(a,b),y_correct))\r\n\r\n%%\r\na=16;\r\nb=18;\r\ny_correct=58\r\nassert(isequal(your_fcn_name(a,b),y_correct))\r\n\r\n%%\r\na=16;\r\nb=72;\r\ny_correct=136\r\nassert(isequal(your_fcn_name(a,b),y_correct))","published":true,"deleted":false,"likes_count":1,"comments_count":4,"created_by":17228,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":71,"test_suite_updated_at":"2014-05-12T07:30:16.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-05-07T11:30:17.000Z","updated_at":"2026-02-19T10:40:20.000Z","published_at":"2014-05-07T11:30:17.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.gif\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eIn the figure below, the rectangle at the corner measures a cm x b cm. What is the radius of the circle in cm?\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.gif\",\"contentType\":\"image/gif\",\"content\":\"data:image/gif;base64,R0lGODlhaABoAPcAAAAAAISEhMbGxv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ywAAAAAaABoAAAI/gAHCBxIsKDBgwgTKlzIsKHDhxAjSpxIEYDFixgzatzIsaPHjyBDdiQIQIDJkyhTogxAUaDIli0BkFRJUyVLiBkd5oSpc2bNnwJuLsTIcwDRoghlDiwJtKbQpEqRFrQodarPpjahRq1q8CLXrUyxpnzqcitXhVSRghWbdanZswzTwlzLduVSuBV50q1rkqVcvBL/RgQboLDhw4gRvwUcOO/dxoyLLo5LcvDkyIEvJ638UDPmiZ6tPm4Y+jNk0pwpm4Zb2mhqtKsBlwarOjbe0LRh22bsOXfC1rtBD33dNXhkzb6LGz/+m/jo5bw3P3cO/ezk5NOr3z6I3bX2z2+7/gP/HlO5S9HkMZvFPj694+fd3W+HT12+9dfx7X/Fn10/a/rn+cdcgAG2J6Bw3hV4oHoEemfggjg1qNSDEPaUoGsUVtgTbRlqSBmHHsp2oUwdhtgciCbeB1aJKUJFEostdrVijNbNSGNVfwl241w27ihZjz7y+GKQPw5JpJBuHYlkWUrGBGSTOD0JpU5SThkXilaihmWWw23J5YmVwXgjiWF++SFnYrY4IZpmNjdig22y+ViaKa45Gp0eRuUbnhrqyV+cEv4JaHL5ZUkoemauRxyfAiqaHaP2heccpPJJ2h+l5C2WH6bVXVcfp9B52h+cRF5W6IVBIlffqGoOxyqpdDT2tuqredaGqnSxokbrro1aCCuuIQJ3qnl9RsirkQvq6Oqvy/r34LBu6kchtL+BGmV5x0arXYnUDmVttZLNeu1uyiLILGjlfpWuubeqBem62J6rl1fzwjuXuFLtdCW9DGaLY0jBrSjSwAQXbLDBgCZsWkAAADs=\"}]}"},{"id":2497,"title":"Distance between two GPS Coordinates","description":"A problem that arises when performing geographically weighted regression is determining the distance between GPS coordinates. GIS (geographical information system) data is usually reported as a function of latitude and longitude.\r\nA common form of GIS data is a CSV file of latitude, longitude, z triples, where z is some quantity that varies with space.\r\nAs a prelude to interpolation, the distance between a given point and every other given point in an area needs to be calculated.\r\nGiven a set of GPS coordinates, return the distance (in miles) between each point and every point around it using the haversine formula ( http://en.wikipedia.org/wiki/Haversine_formula ) and taking the radius of Earth to be 3959 miles.\r\nSee Test Suite for Examples","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.4333px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 204px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 102px; transform-origin: 407px 102px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 368.5px 8px; transform-origin: 368.5px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eA problem that arises when performing geographically weighted regression is determining the distance between GPS coordinates. GIS (geographical information system) data is usually reported as a function of latitude and longitude.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 373.5px 8px; transform-origin: 373.5px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eA common form of GIS data is a CSV file of latitude, longitude, z triples, where z is some quantity that varies with space.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 366.5px 8px; transform-origin: 366.5px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eAs a prelude to interpolation, the distance between a given point and every other given point in an area needs to be calculated.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 371px 8px; transform-origin: 371px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eGiven a set of GPS coordinates, return the distance (in miles) between each point and every point around it using the haversine formula (\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 2px 8px; transform-origin: 2px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e \u003c/span\u003e\u003c/span\u003e\u003ca target='_blank' href = \"/#null\"\u003e\u003cspan style=\"\"\u003e\u003cspan style=\"\"\u003ehttp://en.wikipedia.org/wiki/Haversine_formula\u003c/span\u003e\u003c/span\u003e\u003c/a\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 156px 8px; transform-origin: 156px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e ) and taking the radius of Earth to be 3959 miles.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space: pre-wrap; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 88px 8px; transform-origin: 88px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eSee Test Suite for Examples\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function dist = procGPS(coords)\r\n\r\nend","test_suite":"%%\r\ncoords = [\r\n47.7891\t-103.074\r\n47.7885\t-103.051\r\n47.7598\t-103.055\r\n47.76\t-103.055\r\n47.761\t-103.055];\r\ndist_correct = [\r\n   0.00000   1.06856   2.20846   2.19580   2.13270\r\n   1.06856   0.00000   1.99178   1.97802   1.90924\r\n   2.20846   1.99178   0.00000   0.01382   0.08292\r\n   2.19580   1.97802   0.01382   0.00000   0.06910\r\n   2.13270   1.90924   0.08292   0.06910   0.00000];\r\nassert(abs(sum(sum((procGPS(coords)-dist_correct))))\u003c0.005*max(max(dist_correct)))\r\n\r\n%%\r\ncoords = [\r\n48.9803\t-103.808\r\n48.98031 -103.808\r\n48.9806\t-103.765\r\n48.9806\t-103.764\r\n48.9534\t-103.743\r\n48.9809\t-103.785\r\n48.9822\t-103.802\r\n48.2269\t-102.295\r\n48.2559\t-102.337\r\n48.2556\t-102.311\r\n48.2557\t-102.36\r\n48.2557\t-102.359\r\n48.9818\t-103.231\r\n48.8639\t-103.507\r\n48.8804\t-103.51\r\n48.8648\t-103.529\r\n48.7935\t-103.401\r\n48.8379\t-103.715\r\n48.63282 -103.492268];\r\n\r\ndist_correct = [\r\n0\t0.000690976\t1.950155232\t1.995502612\t3.485510848\t1.043867842\t0.302111766\t86.53754762\t83.78510566\t84.75282145\t82.9534702\t82.98989215\t26.16671135\t15.85736704\t15.18721355\t14.97174021\t22.55114901\t10.70767068\t27.98081693\r\n0.000690976\t0\t1.950147814\t1.995495354\t3.485879124\t1.043840523\t0.301812113\t86.53795777\t83.78551307\t84.75322419\t82.95388198\t82.99030374\t26.16670599\t15.85771634\t15.18752642\t14.97210747\t22.55154299\t10.70830547\t27.98140911\r\n1.950155232\t1.950147814\t0\t0.045349749\t2.12797696\t0.907229104\t1.681552044\t84.98895345\t82.23092177\t83.18867303\t81.40875472\t81.44476589\t24.21656659\t14.22106846\t13.48832542\t13.37289322\t20.99166378\t10.11831281\t27.04659437\r\n1.995502612\t1.995495354\t0.045349749\t0\t2.107084218\t0.95256744\t1.726805519\t84.95285272\t82.19469683\t83.15221287\t81.37275326\t81.40875472\t24.17121793\t14.18369356\t13.44938704\t13.33654253\t20.95588696\t10.10821786\t27.0257419\r\n3.485510848\t3.485879124\t2.12797696\t2.107084218\t0\t2.690817215\t3.335092424\t83.06183212\t80.30813598\t81.2738957\t79.47857211\t79.5149\t23.3078386\t12.37415418\t11.72088759\t11.48623566\t19.06975001\t8.0814959\t24.91872689\r\n1.043867842\t1.043840523\t0.907229104\t0.95256744\t2.690817215\t0\t0.776146592\t85.72532328\t82.96973548\t83.93198388\t82.14329292\t82.17948968\t25.12340423\t14.98902476\t14.28513822\t14.12265973\t21.72709198\t10.37975791\t27.49426357\r\n0.302111766\t0.301812113\t1.681552044\t1.726805519\t3.335092424\t0.776146592\t0\t86.39692438\t83.64318272\t84.6086705\t82.81365124\t82.8499822\t25.89393315\t15.69097514\t15.00598099\t14.81325771\t22.40402258\t10.72506046\t27.95475568\r\n86.53754762\t86.53795777\t84.98895345\t84.95285272\t83.06183212\t85.72532328\t86.39692438\t0\t2.784056299\t2.115378101\t3.592699243\t3.55447642\t67.45150094\t70.78812687\t71.60197135\t71.61685609\t63.99904083\t77.48346607\t61.64286707\r\n83.78510566\t83.78551307\t82.23092177\t82.19469683\t80.30813598\t82.96973548\t83.64318272\t2.784056299\t0\t1.196326277\t1.058218953\t1.012217459\t64.67828567\t68.02660818\t68.83652677\t68.85826762\t61.24275477\t74.76787565\t59.00989918\r\n84.75282145\t84.75322419\t83.18867303\t83.15221287\t81.2738957\t83.93198388\t84.6086705\t2.115378101\t1.196326277\t0\t2.254291389\t2.20828588\t65.45050761\t68.97840161\t69.77964632\t69.81586121\t62.20537972\t75.78431266\t60.09066956\r\n82.9534702\t82.95388198\t81.40875472\t81.37275326\t79.47857211\t82.14329292\t82.81365124\t3.592699243\t1.058218953\t2.254291389\t0\t0.046005686\t64.03108715\t67.21123856\t68.02924605\t68.03734456\t60.41790968\t73.89077428\t58.07210156\r\n82.98989215\t82.99030374\t81.44476589\t81.40875472\t79.5149\t82.17948968\t82.8499822\t3.55447642\t1.012217459\t2.20828588\t0.046005686\t0\t64.05947669\t67.24693201\t68.06459108\t68.07327999\t60.45399813\t73.92914571\t58.11306589\r\n26.16671135\t26.16670599\t24.21656659\t24.17121793\t23.3078386\t25.12340423\t25.89393315\t67.45150094\t64.67828567\t65.45050761\t64.03108715\t64.05947669\t0\t14.94634989\t14.47399026\t15.76107662\t15.13093723\t24.12471833\t26.88548218\r\n15.85736704\t15.85771634\t14.22106846\t14.18369356\t12.37415418\t14.98902476\t15.69097514\t70.78812687\t68.02660818\t68.97840161\t67.21123856\t67.24693201\t14.94634989\t0\t1.148233919\t1.001951244\t6.849226939\t9.626393279\t15.9811711\r\n15.18721355\t15.18752642\t13.48832542\t13.44938704\t11.72088759\t14.28513822\t15.00598099\t71.60197135\t68.83652677\t69.77964632\t68.02924605\t68.06459108\t14.47399026\t1.148233919\t0\t1.381147146\t7.786547077\t9.771067867\t17.1262391\r\n14.97174021\t14.97210747\t13.37289322\t13.33654253\t11.48623566\t14.12265973\t14.81325771\t71.61685609\t68.85826762\t69.81586121\t68.03734456\t68.07327999\t15.76107662\t1.001951244\t1.381147146\t0\t7.627064455\t8.658757412\t16.11638162\r\n22.55114901\t22.55154299\t20.99166378\t20.95588696\t19.06975001\t21.72709198\t22.40402258\t63.99904083\t61.24275477\t62.20537972\t60.41790968\t60.45399813\t15.13093723\t6.849226939\t7.786547077\t7.627064455\t0\t14.61255215\t11.85676168\r\n10.70767068\t10.70830547\t10.11831281\t10.10821786\t8.0814959\t10.37975791\t10.72506046\t77.48346607\t74.76787565\t75.78431266\t73.89077428\t73.92914571\t24.12471833\t9.626393279\t9.771067867\t8.658757412\t14.61255215\t0\t17.43086334\r\n27.98081693\t27.98140911\t27.04659437\t27.0257419\t24.91872689\t27.49426357\t27.95475568\t61.64286707\t59.00989918\t60.09066956\t58.07210156\t58.11306589\t26.88548218\t15.9811711\t17.1262391\t16.11638162\t11.85676168\t17.43086334\t0];\r\n\r\nassert(abs(sum(sum((procGPS(coords)-dist_correct))))\u003c0.005*max(max(dist_correct)))","published":true,"deleted":false,"likes_count":2,"comments_count":4,"created_by":379,"edited_by":223089,"edited_at":"2022-05-20T18:56:16.000Z","deleted_by":null,"deleted_at":null,"solvers_count":38,"test_suite_updated_at":"2022-05-20T18:56:16.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-08-09T13:16:53.000Z","updated_at":"2026-04-01T15:40:43.000Z","published_at":"2014-08-09T14:01:42.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA problem that arises when performing geographically weighted regression is determining the distance between GPS coordinates. GIS (geographical information system) data is usually reported as a function of latitude and longitude.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA common form of GIS data is a CSV file of latitude, longitude, z triples, where z is some quantity that varies with space.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eAs a prelude to interpolation, the distance between a given point and every other given point in an area needs to be calculated.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven a set of GPS coordinates, return the distance (in miles) between each point and every point around it using the haversine formula (\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"\\\"\u003e\u003cw:r\u003e\u003cw:t\u003ehttp://en.wikipedia.org/wiki/Haversine_formula\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e ) and taking the radius of Earth to be 3959 miles.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eSee Test Suite for Examples\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":2582,"title":"Cut an orange","description":"Inspired by problem \u003chttp://www.mathworks.co.uk/matlabcentral/cody/problems/2175 2175\u003e.\r\n\r\nA hungry matlab enthusiast has an orange. He decides to cut it into pieces using three dimensional grid.\r\n\r\nGiven grid density _N_ please help him to find the number of ideal cubes full of juicy orange and the number of pieces containing also some peel.\r\n\r\nExample: For _N=3_ matlab enthusiast is not satisfied. He gets [1 26]. Only one cube and 26 unpeeled pieces!\r\n\r\nRelated problems:\r\n\r\n\u003chttp://www.mathworks.co.uk/matlabcentral/cody/problems/554 554\u003e, \u003chttp://www.mathworks.co.uk/matlabcentral/cody/problems/1283 1283\u003e, \u003chttp://www.mathworks.co.uk/matlabcentral/cody/problems/1387 1387\u003e\r\n\r\n\r\n\r\n","description_html":"\u003cp\u003eInspired by problem \u003ca href = \"http://www.mathworks.co.uk/matlabcentral/cody/problems/2175\"\u003e2175\u003c/a\u003e.\u003c/p\u003e\u003cp\u003eA hungry matlab enthusiast has an orange. He decides to cut it into pieces using three dimensional grid.\u003c/p\u003e\u003cp\u003eGiven grid density \u003ci\u003eN\u003c/i\u003e please help him to find the number of ideal cubes full of juicy orange and the number of pieces containing also some peel.\u003c/p\u003e\u003cp\u003eExample: For \u003ci\u003eN=3\u003c/i\u003e matlab enthusiast is not satisfied. He gets [1 26]. Only one cube and 26 unpeeled pieces!\u003c/p\u003e\u003cp\u003eRelated problems:\u003c/p\u003e\u003cp\u003e\u003ca href = \"http://www.mathworks.co.uk/matlabcentral/cody/problems/554\"\u003e554\u003c/a\u003e, \u003ca href = \"http://www.mathworks.co.uk/matlabcentral/cody/problems/1283\"\u003e1283\u003c/a\u003e, \u003ca href = \"http://www.mathworks.co.uk/matlabcentral/cody/problems/1387\"\u003e1387\u003c/a\u003e\u003c/p\u003e","function_template":"function pieces=cut_orange(N)\r\n \r\n  cubes = ...\r\n  rest = ...\r\n  pieces=[cubes, rest];\r\n\r\nend\r\n","test_suite":"%% Grid with N=1 doesn't cut the orange, it represents the smallest cube that orange can fit in. There are no juicy cubes, one piece sorrounded by peel.\r\nN = 1;\r\ny_correct = [0 1];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 1;\r\ny_correct = [0 1];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 2;\r\ny_correct = [0 8];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 3;\r\ny_correct = [1 26];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 4;\r\ny_correct = [8 56];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 5;\r\ny_correct = [19 98]; % was [27 90] \r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 6;\r\ny_correct = [32 152]; % was [56 128];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 7;\r\ny_correct = [81 194];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 8;\r\ny_correct = [136 272]; % was [160 248];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 9;\r\ny_correct = [203 362]; % was [251 314];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\nN = 10;\r\ny_correct = [304 416]; % was [312 408];\r\nassert(isequal(cut_orange(N),y_correct))\r\n\r\n%%\r\n% finally more cubes than peels!\r\nN = 13;\r\nassert(isequal(-diff(cut_orange(N)),5))\r\n\r\n%%\r\nN = 19;\r\ny_correct = [2769 1658];\r\nassert(isequal(cut_orange(N),y_correct))","published":true,"deleted":false,"likes_count":2,"comments_count":3,"created_by":14358,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":22,"test_suite_updated_at":"2014-10-08T09:45:10.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-09-12T10:39:45.000Z","updated_at":"2026-02-19T10:43:30.000Z","published_at":"2014-09-12T12:37:15.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eInspired by problem\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.mathworks.co.uk/matlabcentral/cody/problems/2175\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e2175\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA hungry matlab enthusiast has an orange. He decides to cut it into pieces using three dimensional grid.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven grid density\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eN\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e please help him to find the number of ideal cubes full of juicy orange and the number of pieces containing also some peel.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eExample: For\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eN=3\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e matlab enthusiast is not satisfied. He gets [1 26]. Only one cube and 26 unpeeled pieces!\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eRelated problems:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.mathworks.co.uk/matlabcentral/cody/problems/554\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e554\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.mathworks.co.uk/matlabcentral/cody/problems/1283\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e1283\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.mathworks.co.uk/matlabcentral/cody/problems/1387\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e1387\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":2622,"title":"Packing oranges - one layer","description":"Help the seller to pack oranges efficiently. How many oranges can be put into a box in one layer without squeezing them?\r\n\r\nGiven dimension(s) return the maximum number. Assume that oranges are perfect spheres with unitary diameter.","description_html":"\u003cp\u003eHelp the seller to pack oranges efficiently. How many oranges can be put into a box in one layer without squeezing them?\u003c/p\u003e\u003cp\u003eGiven dimension(s) return the maximum number. Assume that oranges are perfect spheres with unitary diameter.\u003c/p\u003e","function_template":"function n = fit(x, varargin)\r\n  % nargcheck\r\n  if nargin \u003e 1\r\n    y = varargin{1};\r\n  else\r\n    y = x;\r\n  end\r\n\r\n  % main code\r\n  n = floor(x * y);\r\n  % ...\r\nend","test_suite":"%%\r\nx = 1;\r\ny = 1;\r\nn = 1;\r\nassert(isequal(fit(x,y),n))\r\n\r\n%%\r\nx = 1;\r\nfor y = randi(100,1,10);\r\n n = y;\r\n assert(isequal(fit(x,y),n))\r\nend\r\n\r\n%%\r\nx = randi(20,1,10);\r\ny = randi(20,1,10);\r\nfor k=1:10\r\n  assert(isequal(fit(x(k),y(k)),fit(y(k),x(k))))\r\nend\r\n%%\r\nx = 1;\r\n%y = 1;\r\nn = 1;\r\nassert(isequal(fit(x),n))\r\n\r\n%%\r\nx = 2;\r\nn = 4;\r\nassert(isequal(fit(x),n))\r\n\r\n%%\r\nx = 1.7;\r\nn = 1;\r\nassert(isequal(fit(x),n))\r\n\r\n%%\r\nx = 1.8;\r\nn = 2;\r\nassert(isequal(fit(x),n))\r\n\r\n%%\r\nx = 1.98;\r\nn = 3;\r\nassert(isequal(fit(x),n))\r\n\r\n%%\r\nx = 2;\r\ny = 1.8;\r\nn = 2;\r\nassert(isequal(fit(x,y),n))\r\n\r\n%%\r\nx = 2;\r\ny = 1.9;\r\nn = 3;\r\nassert(isequal(fit(x,y),n))\r\n\r\n%%\r\nx = 10;\r\ny = 1.44;\r\nn = 11;\r\nassert(isequal(fit(x,y),n))\r\n\r\n%%\r\nx = 1+sin(acos(2/3));\r\nfor k = 1:10\r\n  y = 2 * k + 1.1;\r\n  n = 3 * k + 1;\r\n  assert(isequal(fit(x,y),n))\r\nend\r\n\r\n%%\r\nx = 8;\r\ny = 7.93;\r\nn = 68;\r\nassert(isequal(fit(x,y),n))\r\n\r\n%%\r\nx = Inf;\r\ny = 0.9;\r\nn = 0;\r\nassert(isequal(fit(x,y),n))\r\n\r\n%%\r\nx = Inf;\r\nn = Inf;\r\nassert(isequal(fit(2,x),n))","published":true,"deleted":false,"likes_count":1,"comments_count":4,"created_by":14358,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":12,"test_suite_updated_at":"2014-10-13T10:21:51.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-10-08T14:42:50.000Z","updated_at":"2026-02-19T10:48:58.000Z","published_at":"2014-10-08T14:42:50.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eHelp the seller to pack oranges efficiently. How many oranges can be put into a box in one layer without squeezing them?\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven dimension(s) return the maximum number. Assume that oranges are perfect spheres with unitary diameter.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":2805,"title":"Radiation Heat Transfer — View Factors (1)","description":"View factors (aka configuration factors) are utilized in some radiation heat transfer models to estimate heat transfer rates between surfaces. In particular, the thermal energy leaving a given surface is applied to other surfaces, as appropriate, based on how much the hot surface \"sees\" the other surfaces. As such, view factors are purely geometrical in nature. A range of view factor formulae are available \u003chttp://www.thermalradiation.net/tablecon.html here\u003e.\r\n\r\nFor this problem, calculate the view factor from surface 1 to surface 2 (F_1-2) for two directly opposed, infinitely long plates of the same finite width given the height, which may be a vector of values:\r\n\r\n\u003c\u003chttp://www.thermalradiation.net/images/C-1fig.gif\u003e\u003e\r\n\r\n\u003c\u003chttp://www.thermalradiation.net/images/C-1eq.gif\u003e\u003e","description_html":"\u003cp\u003eView factors (aka configuration factors) are utilized in some radiation heat transfer models to estimate heat transfer rates between surfaces. In particular, the thermal energy leaving a given surface is applied to other surfaces, as appropriate, based on how much the hot surface \"sees\" the other surfaces. As such, view factors are purely geometrical in nature. A range of view factor formulae are available \u003ca href = \"http://www.thermalradiation.net/tablecon.html\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\u003cp\u003eFor this problem, calculate the view factor from surface 1 to surface 2 (F_1-2) for two directly opposed, infinitely long plates of the same finite width given the height, which may be a vector of values:\u003c/p\u003e\u003cimg src = \"http://www.thermalradiation.net/images/C-1fig.gif\"\u003e\u003cimg src = \"http://www.thermalradiation.net/images/C-1eq.gif\"\u003e","function_template":"function F = view_factor(H)\r\n  F = 1;\r\nend","test_suite":"%%\r\nH = 1;\r\ny_correct = sqrt(2) - 1;\r\nassert(isequal(view_factor(H),y_correct))\r\n\r\n%%\r\nH = 3;\r\ny_correct = sqrt(10) - 3;\r\nassert(isequal(view_factor(H),y_correct))\r\n\r\n%%\r\nH = [0.5 2 4 10];\r\ny_correct = [sqrt(1.25)-0.5, sqrt(5)-2, sqrt(17)-4, sqrt(101)-10];\r\nassert(isequal(view_factor(H),y_correct))","published":true,"deleted":false,"likes_count":6,"comments_count":3,"created_by":26769,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":193,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":26,"created_at":"2014-12-31T02:15:48.000Z","updated_at":"2026-03-22T14:06:29.000Z","published_at":"2014-12-31T02:15:48.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.gif\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/media/image2.gif\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eView factors (aka configuration factors) are utilized in some radiation heat transfer models to estimate heat transfer rates between surfaces. In particular, the thermal energy leaving a given surface is applied to other surfaces, as appropriate, based on how much the hot surface \\\"sees\\\" the other surfaces. As such, view factors are purely geometrical in nature. A range of view factor formulae are available\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.thermalradiation.net/tablecon.html\\\"\u003e\u003cw:r\u003e\u003cw:t\u003ehere\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFor this problem, calculate the view factor from surface 1 to surface 2 (F_1-2) for two directly opposed, infinitely long plates of the same finite width given the height, which may be a vector of values:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId2\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.gif\",\"contentType\":\"image/gif\",\"content\":\"data:image/gif;base64,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\"},{\"partUri\":\"/media/image2.gif\",\"contentType\":\"image/gif\",\"content\":\"data:image/gif;base64,R0lGODlhXgFdAIAAAAAAAP///ywAAAAAXgFdAEAC/4yPqcvtD6OctNqLs968+w+G4kiW5omm6sq27gvH8kzXGWDn+s73JO6rAIBB2HBBLDKOiqSS4jwMow2qhLm0BqZcFxapRX2lzyo1XO6SzWhEG+wY7+Tud40Osc/0W75IXRYoOEhYaHiImKi4yNjo+AgZKTlJWWl5iZmpucnZ6fkJGira6DdaiCdVKoNqwDqYxOX6McX2oOpBm3XLERvL0gucaxu8e0EMHCHsVnuFwSq7Ggb90waY1zqNawekzFa80YXWHWfx/H1iLpi9tdwDe3VuKj9PX29/j5+vv8/f7/8PMKDAgQQLGjyIMKHChQwbOnyY5pjEiRQrWuwFMSM5jf8cM8WLwW2dx4uBLn6kYUWkMWSpMC7xwhKbyxauTqqoSUrXTWnS2v3iGa1JIjk2c2gZV+UG0CDpjBAtumKcSpQynfDUowqpTKaotKaYOoJkHKjOLE5QIy5bqaY+2NKcaWblV7h5sJKF55XYNbzW+vjSEbOqV8BE9Ca4G8JqsFQdBdIF83fOY8iDG1u+jDmz5s2cO3v+DDq06NGkS5s+jTq16tWsW7t+DTu27Nm0a9u+jTu37t28e/v+zQgx8M3Ch2subvwycnSVk19a/qOO80/Q5+LLC9bp0exzDvctgT2tdmZObRHCGVyn9bgby7Mf76h5Tshzt9v/ztx+UKGH6FS6/6VeMkqNVYRbMCGBiH8JKhjgXuVQVCCE+7W0oHf/zRLZGvQ1I9d77izl3mEV8tefNVfpMlFdBP5h1opZ7HGhGDHWh8WJHAoB4ocuvjDNOviZoJZ8jPGYS1pYPbgjDwa+tc020u30Bix2gUSLkWfhqF9bXXH3VocRnjVjS2GqphKX68ED45ipiaTmlThOZ0iQGRo1GRxw3olnnnruyWeffv4JaKCCDkpooYYeimiiii7KaKOOPgrpoAUAADs=\"}]}"},{"id":2806,"title":"Radiation Heat Transfer — View Factors (2)","description":"View factors (aka configuration factors) are utilized in some radiation heat transfer models to estimate heat transfer rates between surfaces. In particular, the thermal energy leaving a given surface is applied to other surfaces, as appropriate, based on how much the hot surface \"sees\" the other surfaces. As such, view factors are purely geometrical in nature. A range of view factor formulae are available \u003chttp://www.thermalradiation.net/tablecon.html here\u003e.\r\n\r\nFor this problem, calculate the view factor from surface 1 to surface 2 (F_1-2) for two directly opposed, infinitely long plates of different finite widths given the distance between the plates:\r\n\r\n\u003c\u003chttp://www.thermalradiation.net/images/C-2fig.gif\u003e\u003e\r\n\r\n\u003c\u003chttp://www.thermalradiation.net/images/C-2eq.gif\u003e\u003e\r\n\r\nEach variable may be a vector of values. Also, note that B = b/a and C = c/a.","description_html":"\u003cp\u003eView factors (aka configuration factors) are utilized in some radiation heat transfer models to estimate heat transfer rates between surfaces. In particular, the thermal energy leaving a given surface is applied to other surfaces, as appropriate, based on how much the hot surface \"sees\" the other surfaces. As such, view factors are purely geometrical in nature. A range of view factor formulae are available \u003ca href = \"http://www.thermalradiation.net/tablecon.html\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\u003cp\u003eFor this problem, calculate the view factor from surface 1 to surface 2 (F_1-2) for two directly opposed, infinitely long plates of different finite widths given the distance between the plates:\u003c/p\u003e\u003cimg src = \"http://www.thermalradiation.net/images/C-2fig.gif\"\u003e\u003cimg src = \"http://www.thermalradiation.net/images/C-2eq.gif\"\u003e\u003cp\u003eEach variable may be a vector of values. Also, note that B = b/a and C = c/a.\u003c/p\u003e","function_template":"function F = view_factor2(a,b,c)\r\n  F = 1;\r\nend","test_suite":"%%\r\na = 1;   b = 1;   c = 2;\r\ny_correct = 0.6847;\r\nF = view_factor2(a,b,c);\r\nassert(F \u003c (y_correct + 1e-4))\r\n\r\n%%\r\na = 4;   b = 1;   c = [2 4 8];\r\ny_correct = [0.2409    0.4450    0.7057];\r\nF = view_factor2(a,b,c);\r\nfor i = 1:numel(y_correct)\r\n assert(F(i) \u003c (y_correct(i) + 1e-4))\r\n assert(F(i) \u003e (y_correct(i) - 1e-4))\r\nend\r\n\r\n%%\r\na = [1 2 5 10];\r\nb = [2 5 2 5];\r\nc = [6 6 10 10];\r\ny_correct = [0.9435    0.7582    0.7036    0.4384];\r\nF = view_factor2(a,b,c);\r\nfor i = 1:numel(y_correct)\r\n assert(F(i) \u003c (y_correct(i) + 1e-4))\r\n assert(F(i) \u003e (y_correct(i) - 1e-4))\r\nend","published":true,"deleted":false,"likes_count":2,"comments_count":0,"created_by":26769,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":54,"test_suite_updated_at":"2015-01-01T19:59:48.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-12-31T02:27:10.000Z","updated_at":"2026-02-19T10:52:03.000Z","published_at":"2014-12-31T02:27:10.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.gif\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/media/image2.gif\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eView factors (aka configuration factors) are utilized in some radiation heat transfer models to estimate heat transfer rates between surfaces. In particular, the thermal energy leaving a given surface is applied to other surfaces, as appropriate, based on how much the hot surface \\\"sees\\\" the other surfaces. As such, view factors are purely geometrical in nature. A range of view factor formulae are available\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.thermalradiation.net/tablecon.html\\\"\u003e\u003cw:r\u003e\u003cw:t\u003ehere\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFor this problem, calculate the view factor from surface 1 to surface 2 (F_1-2) for two directly opposed, infinitely long plates of different finite widths given the distance between the plates:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId2\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eEach variable may be a vector of values. Also, note that B = b/a and C = c/a.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.gif\",\"contentType\":\"image/gif\",\"content\":\"data:image/gif;base64,R0lGODlhjgCuAIAAAP///wAAACH5BAEAAAAALAAAAACOAK4AQAL/hI+py+0Po5y02ouz3rz7DwXBJI7giaaHGJauqcayxZLzjZNwtF/vDwwaajkUkfcBVmpBl6+na8KORQRUQq12sgzTVTv8gjHc3E7cRY+XakV7SX6vefLVqZ4oz9lwEN4q9jem1+WhRJHVc7bn9if48AhAyEjXR3m5MemGyZmhmdcZygcpJaqlaOXwGVZi6voKGys7S1ur0yjVZHv5ebgbujr0+xosOexaHNnQSvOmTIb17Cl0m+cbLdz8s7DqhVksCu4n+Sjeac4rzQiuDvp0HGZpGAdPLj993VK42J7k6GcO3bd/9TixK2iQIEJKBxeOW5StUbQXDuc0rIgxo8aN/xw7evwIckYwZiFFyqFYUoYmXSlTTMrV0giefjHTIKoZIxlOFTp3yrwJsBzNQTODiiuzDZHApNyGRmFaKVdPY09g2jtVChsprJVC5KQHT+A6p1zXPBPLkKwNO0rrXeQwIqDaIm+3xKHWNB8gvSvwWrsHF+yxuoHfhVU4z/BgxHYVDyOcSfCmyQMBV4WqDxeVuZKRGHIyam1loJ+FumVskTMOyD41sG7d2Svsz5ZnO/ZsOxNq24J6+fU5hZtNOihzU142E63x5cybO38OPbr06dSrW79eFgt2VXVIbv9LXDnvk6C/Awrv3fzK39tfZlVf1LxE0fL7kq4fjz7+qfivav/vn99/APK3X3wDGtgfgY01c9p9W8jVoH66pddVGuIp5V5qFGbWF1/LsKUNZv5hVdxEUrF33hcnnjgiXSgit5eHhbT4FGYjtWNVhZqplhchvXx12y4/8hSbLTcmFOEvF5rFY05NqvSkS1HyNOVxDB6WWkTVLFabD6m0haWDrnkT2mO7EZWkgGOliVtiV3IpZmRBGnmmJ0XW8ho0c+JZp55vmtmln2Uq2aeXe9KSp6F/EhqoooMKWSgNd1IFS6LoiQijcIpUyaGa+GCaqTuUaplWozWyAwUqIKZjqokbcteqi7GityiksxJ36CyW3npemBKysSJeS6IZ53e7UnfsdMlMSrdsdM1C9+xz0To3bXPVMnftctly1JszL+KUqh6+yRhTXDPO10KJrak7Kni08iaqGskMy2157uKa4BTBkgtgv/7+C3DAAg9McAMFAAA7\"},{\"partUri\":\"/media/image2.gif\",\"contentType\":\"image/gif\",\"content\":\"data:image/gif;base64,R0lGODlhIwJhAIAAAAAAAP///ywAAAAAIwJhAEAC/4yPqcvtD6OctNqLs968+w+G4kiW5omm6sq27gvH8kzXEIDngM33/g8M6nLBYobIQRqXzKbzKVFCpwbpEXfZUbdTLfeLsaawDjK4JH54FWZG+/AmxavvOWLN0tnwcP7dH5AmMhdnBwejV2Y4MjSU1wi5KCPoxiYZiEfZALigGXVJwbm55jlm6Ve6UneZOiHqRirZmvSKCVpFV3uWe0o6qth5e1exWCscRavbkXgY/Ls5hsqq7Jqsdqxy7PuYwOxsec3pWL1LvUtMRG1etM6OfR793NcOX29/j5/vYtdG+K4PMKDAgQQLGjyIMKHChQwbOnwIMaLEiRQrWryIMaPGgP+Nlv3bCDIkmo8i53mkF6ikQZQqT7YMQ/JPO5b6YsKjmc+miVkeCInkCWgaLHKudAXN1JHYEV40pA29Ee8bOJnekIVhOgpnKFQqraSR9sqQtqIuP5iLlFQOv1NSm4oTxRNqUbSC4kZVSvCrHmNagei8mShs3x9/Y9gNWfdouMUvAR5uPKhwRFlvIVu+jDmz5s2cO3v+DDq06NGkS5s+jTq16tWsW3+B5Dp2Qdim/z6WjRvM7a62Jef+vWR3SeFY0dE9jjy58uXMmzt/nhYR9OnUq1u/zjzY4I3EbWUBzmM76e4gu9sV/7o4Q/RbtJBn5PtG9nNoNZxXoz3Si7Tuie7/Y39VGfIxA+A8+nXjXwuUFQiMgBjFpdg1T8En2FRsDKOKd01N2A1ld3VoIYLNZKNhVgrywWBOY4Uoj3pyfUJLCCh58Z59LPbRwyoVgjCjSYqk2CGKQN4zC1iMBRkKWdaYhZdMGyJ5o2H+wOXbOkIKNiQdeywnBBnuiWFki1BaBeOL2vG4pBy5oHhmW9Ds9BaV4mnlSY35lfJPfF2CRWODVB34XRbR+cnkBnb+uI2bvRx6J23yDZImLFmiY+A4GEpZJ10RJIaFUZOq8mkTgT1qj54nhjognoOicJRYEUqKKHgzVCXrj6C5OiaijNbKazSWbiZnm70OS6xffJlYbLLK/+6H3JqALgtttNJOS2211l6Lbbbabsttt95+C2644o5Lbrnmnotuuuquy2677r4LLxSOxvvtvMruSm+v+Er06xWo5hvbvhOZZyrAvArMb2//GswawpMpzHC5DkNEcI8ML/zSxA9VHKjBGGdccEUcW/DxsCXzdvJKEJNMscbBtRxyWeOtnKRDsWyMM4571kZzghun/GTC7vxLictdYBOWrU76GqQZnkoHdEpvwvonqzqKKCGzWP6H34NIcwi2zmpl/cfU/8Xss5Zhg2h12GJhuvUjUXMBoaJRlhiZmWU37fIORldyNyZ6jy3s3n+ijWCmqPqE2Iq5rl3kVjTZaTHehv+xhXkNU1JdKMsuPn4C442flXlWq266VaRJdGz5fqUb7pa9nC/DuuLcLD16zbiLqXbaa5Ncpec+TvJ675o7pXRPwn++e+hcHY1ds69/VbjdxvOtqfXG+Su9ooonlzzWw8POfffaF0MSl24vCGpmSqwaJu9io/4JncHPdZxatMbfvJTyj786/GWveIQjVf3m5jykSKEy/xOc7jYliyPRzlCIs0Udflentv0OgIZSHQEjo4xb3GwgYFogsop3mJkUgi/osd+kqtKqE85vJFcakIw8CDq3CCovU+pTA8uBQLiNSHtAfE0FKYVEEvIjHfQjUhAngQRjqEg3R0zdA892uuaD2U5SwnjiUkTGxCaWgz5VVBIE++W8/PwPfXEqI7HQuKy/zWaJs/vgmgBGqzi6UWWv6h/2vBgxyMjOfUscJBflGMhbZdEy6CNiIh/ZOEKxDZKU/MmxNljJTD4McNcjnyY/CbP6cBCRoCylKU+JylSqcpWsbKUrXwnLWMpylrSspS2dUAAAOw==\"}]}"},{"id":2807,"title":"Radiation Heat Transfer — View Factors (3)","description":"View factors (aka configuration factors) are utilized in some radiation heat transfer models to estimate heat transfer rates between surfaces. In particular, the thermal energy leaving a given surface is applied to other surfaces, as appropriate, based on how much the hot surface \"sees\" the other surfaces. As such, view factors are purely geometrical in nature. A range of view factor formulae are available \u003chttp://www.thermalradiation.net/tablecon.html here\u003e.\r\n\r\nFor this problem, calculate the view factor from surface 1 to surface 2 (F_1-2) for two infinitely long plates of different finite widths and having a common edge given the angle between the plates:\r\n\r\n\u003c\u003chttp://www.thermalradiation.net/images/C-5fig.gif\u003e\u003e\r\n\r\n-\r\n\r\n\u003c\u003chttp://www.thermalradiation.net/images/C-5a%20eq.gif\u003e\u003e\r\n\r\nAny of the variables can be a vector. Also, note that A = a/b, and is different than A_1 or A_2. Finally, the angle is provided in degrees.","description_html":"\u003cp\u003eView factors (aka configuration factors) are utilized in some radiation heat transfer models to estimate heat transfer rates between surfaces. In particular, the thermal energy leaving a given surface is applied to other surfaces, as appropriate, based on how much the hot surface \"sees\" the other surfaces. As such, view factors are purely geometrical in nature. A range of view factor formulae are available \u003ca href = \"http://www.thermalradiation.net/tablecon.html\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\u003cp\u003eFor this problem, calculate the view factor from surface 1 to surface 2 (F_1-2) for two infinitely long plates of different finite widths and having a common edge given the angle between the plates:\u003c/p\u003e\u003cimg src = \"http://www.thermalradiation.net/images/C-5fig.gif\"\u003e\u003cp\u003e-\u003c/p\u003e\u003cimg src = \"http://www.thermalradiation.net/images/C-5a%20eq.gif\"\u003e\u003cp\u003eAny of the variables can be a vector. Also, note that A = a/b, and is different than A_1 or A_2. Finally, the angle is provided in degrees.\u003c/p\u003e","function_template":"function F = view_factor3(a,b,alpha)\r\n  F = 1;\r\nend","test_suite":"%%\r\na = 1;   b = 2;   alpha = 135;\r\ny_correct = 0.0505;\r\nF = view_factor3(a,b,alpha);\r\nassert(F \u003c (y_correct + 1e-4))\r\nassert(F \u003e (y_correct - 1e-4))\r\n\r\n%%\r\na = 4;   b = 1;   alpha = [45 90 135 180];\r\ny_correct = [0.8160    0.4384    0.1200         0];\r\nF = view_factor3(a,b,alpha);\r\nfor i = 1:numel(y_correct)\r\n assert(F(i) \u003c (y_correct(i) + 1e-4))\r\n assert(F(i) \u003e (y_correct(i) - 1e-4))\r\nend\r\n\r\n%%\r\na = [1 2 5 10 1 2 5 10];\r\nb = [2 5 2 5 2 5 2 5];\r\nalpha = [60 60 60 60 120 120 120 120];\r\ny_correct = [0.3170    0.2641    0.6603    0.6340    0.0886    0.0755    0.1888    0.1771];\r\nF = view_factor3(a,b,alpha);\r\nfor i = 1:numel(y_correct)\r\n assert(F(i) \u003c (y_correct(i) + 1e-4))\r\n assert(F(i) \u003e (y_correct(i) - 1e-4))\r\nend","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":26769,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":52,"test_suite_updated_at":"2015-01-01T19:53:58.000Z","rescore_all_solutions":false,"group_id":26,"created_at":"2014-12-31T02:39:43.000Z","updated_at":"2026-02-19T10:53:46.000Z","published_at":"2014-12-31T02:50:28.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.gif\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/media/image2.gif\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eView factors (aka configuration factors) are utilized in some radiation heat transfer models to estimate heat transfer rates between surfaces. In particular, the thermal energy leaving a given surface is applied to other surfaces, as appropriate, based on how much the hot surface \\\"sees\\\" the other surfaces. As such, view factors are purely geometrical in nature. A range of view factor formulae are available\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://www.thermalradiation.net/tablecon.html\\\"\u003e\u003cw:r\u003e\u003cw:t\u003ehere\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFor this problem, calculate the view factor from surface 1 to surface 2 (F_1-2) for two infinitely long plates of different finite widths and having a common edge given the angle between the plates:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e-\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId2\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eAny of the variables can be a vector. Also, note that A = a/b, and is different than A_1 or A_2. Finally, the angle is provided in degrees.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.gif\",\"contentType\":\"image/gif\",\"content\":\"data:image/gif;base64,R0lGODlh4wB3AIAAAAAAAP///yH5BAAAAAAALAAAAADjAHcAAAL/jI+py+0Po5y02ouz3rz7D4biSJbmiZYAkLbuC4frGtf2jQesPuf+D+TQDr2g8YhU7BLFpPNpGyqbxyX0erIuZlpgFwv2SB1Ury6MFk+41XP6fRlH2GbDF47fYsoaFvcPKLd0l1coV8EXJ0RnR1j4uJaIuKG1YwmJuScp4cjJ9JmJ1/mwCTFK2sR4GopUSubasNrHKspIYeuZ5UaLFmiBS4oCzAsVKEt0SEa8vPgXB2vHLJ0BSA17PJ3dmIzIjYCtPd0DzlRKHs48dP4tuY6e7b79Ff8uTc9HX5/ebJWvv08p1b+Bufp4I4gQlMGDCRveg9Zw4EOGESV2gFix3kR//xlZbezYMd8wkBYDUiSJ7iNKhxcxrgRo8iVLkxxlwhHp0iYtnCd1ElPpU2PLnkE9Dq1ZNNzIpDKXMl3p9CnJqB+KIJVqiugUrdSi7QJ5dQ8Ra1x/ffsastXCUWW9NoKK9gbVV+3m6hkLN6xZt5oE+VL0FuUgH4Np8jDW9nDgtHzl2qVrydjhxJj8IL6MyxkvW3/Z6btaCVkmzpq36m0jQ2HcPJmv5ewlI5XVUKVFR9pc43SMx6hoR0HdlyPlILqVAX82fIqhKMlFuONdME1xUWudTwdxnTrZsNkvNt3OHUx37cFJjAds8/nr6MfTVx/RHH7SdbVTr3fOVH38LfVzS//VXxNiOZxnVHABdvYbVgDG1t8LBO70XlUNtvAgbtsxuN9eWKnWzX2xeEjJhkpEKOGDFcKEHGgninhXiiuymMIgx2BGY4023ohjjjrueGMSlnHFY5BCDklkkTY6MWEskxnJZJNOPgmiedVw8uJURgiYFV4welcFgi02tmVXPiZ5SJUZmcnAhHegGRGbaZZJiJsJyZmmZ8aFGaJ0c+ApRC+r0EkQoF+awmeexWAj6D+J8oBeoY0WKJ44yyxqJ4qQKkccJN5QKpZpV2qaCKePTmlGhjCQCuZoyKBK2CU3dSbqL1AyqZAjs95KQ6yTyAOdLqliIdmvmpbTqwmFvcGqrvwdfCrsoaYaImeUjjlKbbXWXottttpuy2233n7raAEAOw==\"},{\"partUri\":\"/media/image2.gif\",\"contentType\":\"image/gif\",\"content\":\"data:image/gif;base64,R0lGODlh5AAtAJEAAAAAAP///wQEBP///yH5BAEAAAMALAAAAADkAC0AAAL/jI+py+0Po5y02ouz3rz7D4biSJbmiabqyrbuC4uCENfLjNABbveYrvPZgruiUYicEJOu4HLJPEAj0weP8bxUHbOtNHU1OBNeYZh6hnQb4fItbf2y3Z21/IiPivPSLT3nd0TjV/V3x7dnuNG296X4MogVqASXKGb3hqVRiLjYNfh5GSn62AIkyUaBSdaIppkxdQrI80kbOrsDuqpH1Uo2KVFpZFhZepjjW0tqmwvYx8wbfLusjPxc61Q4LYnNeF3N+rZ6Br3d3IcerWatIKwIR0TMaTGf/ASEj9kWb4wUj/pK2g12auopSXWIHD5cl5ylU4fw2MN2qsiFczVQFcEsw9+oNbyyBluuftzMfbhl8lw7YSuz2WLp8Ne7aijH2RE5ch+OULs4/INIjyTQEDC1EByKRihSn0UrjFnqVClUWFIp+pqKNSvVntK6af3K6ynYsWQDVp3TLa3atWzbun0LN67cuXTTcvk1RxzOsnwhZbR6tq9gorvKBB6MuIThxIzDeuzUWEvTyHc1HUYslnLUWFw1H5ToObQZ0aSTXC6Nml7q1X5Zu1Zx+rXsi7Nrg/hpO/fWzrp7+/4NPLjw4cSLG49WAAA7\"}]}"},{"id":42306,"title":"Esoteric Trigonometry","description":"From Wikipedia: \"All of the trigonometric functions of an angle θ can be constructed geometrically in terms of a unit circle centered at O. Many of these terms are no longer in common use.\"\r\n\r\n\u003c\u003chttps://i.imgur.com/vVIFB1x.png\u003e\u003e\r\n\r\nNonetheless, suppose you do need to use one of these esoteric trigonometric functions that is not built into Matlab. Write a function that takes an angle as the first input (radians) and the trigonometric function name as the second input (string, function name will be completely spelled out). Make sure your function covers both the esoteric and commonly used functions; then it's a more useful tool. In particular, include sine, cosine, tangent, cosecant, secant, cotangent, versine, vercosine, coversine, covercosine, haversine, havercosine, hacoversine, hacovercosine, exsecant, excosecant, and chord. Formulas for each function are available \u003chttp://en.wikipedia.org/wiki/List_of_trigonometric_identities here\u003e.","description_html":"\u003cp\u003eFrom Wikipedia: \"All of the trigonometric functions of an angle θ can be constructed geometrically in terms of a unit circle centered at O. Many of these terms are no longer in common use.\"\u003c/p\u003e\u003cimg src = \"https://i.imgur.com/vVIFB1x.png\"\u003e\u003cp\u003eNonetheless, suppose you do need to use one of these esoteric trigonometric functions that is not built into Matlab. Write a function that takes an angle as the first input (radians) and the trigonometric function name as the second input (string, function name will be completely spelled out). Make sure your function covers both the esoteric and commonly used functions; then it's a more useful tool. In particular, include sine, cosine, tangent, cosecant, secant, cotangent, versine, vercosine, coversine, covercosine, haversine, havercosine, hacoversine, hacovercosine, exsecant, excosecant, and chord. Formulas for each function are available \u003ca href = \"http://en.wikipedia.org/wiki/List_of_trigonometric_identities\"\u003ehere\u003c/a\u003e.\u003c/p\u003e","function_template":"function y = trig_func_tool(theta,f_name)\r\n \r\nend","test_suite":"%%\r\ntheta = pi/3;\r\nf_name = 'sine';\r\nassert(isequal(trig_func_tool(theta,f_name),sin(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'cosine';\r\nassert(isequal(trig_func_tool(theta,f_name),cos(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'tangent';\r\nassert(isequal(trig_func_tool(theta,f_name),tan(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'cosecant';\r\nassert(isequal(trig_func_tool(theta,f_name),csc(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'secant';\r\nassert(isequal(trig_func_tool(theta,f_name),sec(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'cotangent';\r\nassert(isequal(trig_func_tool(theta,f_name),cot(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'versine';\r\nassert(isequal(trig_func_tool(theta,f_name),1-cos(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'vercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),1+cos(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'coversine';\r\nassert(isequal(trig_func_tool(theta,f_name),1-sin(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'covercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),1+sin(theta)))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'haversine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1-cos(theta))/2))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'havercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1+cos(theta))/2))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'hacoversine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1-sin(theta))/2))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'hacovercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1+sin(theta))/2))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'exsecant';\r\nassert(isequal(trig_func_tool(theta,f_name),sec(theta)-1))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'excosecant';\r\nassert(isequal(trig_func_tool(theta,f_name),csc(theta)-1))\r\n\r\n%%\r\ntheta = pi/3;\r\nf_name = 'chord';\r\nassert(isequal(trig_func_tool(theta,f_name),2*sin(theta/2)))\r\n\r\n%%\r\ntheta = pi/5;\r\nf_name = 'sine';\r\nassert(isequal(trig_func_tool(theta,f_name),sin(theta)))\r\n\r\n%%\r\ntheta = pi/10;\r\nf_name = 'cosine';\r\nassert(isequal(trig_func_tool(theta,f_name),cos(theta)))\r\n\r\n%%\r\ntheta = pi/2.5;\r\nf_name = 'tangent';\r\nassert(isequal(trig_func_tool(theta,f_name),tan(theta)))\r\n\r\n%%\r\ntheta = 2*pi/3;\r\nf_name = 'cosecant';\r\nassert(isequal(trig_func_tool(theta,f_name),csc(theta)))\r\n\r\n%%\r\ntheta = pi/7;\r\nf_name = 'secant';\r\nassert(isequal(trig_func_tool(theta,f_name),sec(theta)))\r\n\r\n%%\r\ntheta = pi/13;\r\nf_name = 'cotangent';\r\nassert(isequal(trig_func_tool(theta,f_name),cot(theta)))\r\n\r\n%%\r\ntheta = pi/31;\r\nf_name = 'versine';\r\nassert(isequal(trig_func_tool(theta,f_name),1-cos(theta)))\r\n\r\n%%\r\ntheta = pi/1.3;\r\nf_name = 'vercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),1+cos(theta)))\r\n\r\n%%\r\ntheta = pi/3.3;\r\nf_name = 'coversine';\r\nassert(isequal(trig_func_tool(theta,f_name),1-sin(theta)))\r\n\r\n%%\r\ntheta = pi/33;\r\nf_name = 'covercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),1+sin(theta)))\r\n\r\n%%\r\ntheta = pi/0.7;\r\nf_name = 'haversine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1-cos(theta))/2))\r\n\r\n%%\r\ntheta = pi/0.3;\r\nf_name = 'havercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1+cos(theta))/2))\r\n\r\n%%\r\ntheta = pi/13;\r\nf_name = 'hacoversine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1-sin(theta))/2))\r\n\r\n%%\r\ntheta = pi/31;\r\nf_name = 'hacovercosine';\r\nassert(isequal(trig_func_tool(theta,f_name),(1+sin(theta))/2))\r\n\r\n%%\r\ntheta = pi/30;\r\nf_name = 'exsecant';\r\nassert(isequal(trig_func_tool(theta,f_name),sec(theta)-1))\r\n\r\n%%\r\ntheta = pi/1.3;\r\nf_name = 'excosecant';\r\nassert(isequal(trig_func_tool(theta,f_name),csc(theta)-1))\r\n\r\n%%\r\ntheta = pi/13;\r\nf_name = 'chord';\r\nassert(isequal(trig_func_tool(theta,f_name),2*sin(theta/2)))","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":26769,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":41,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":26,"created_at":"2015-05-12T17:53:15.000Z","updated_at":"2026-02-19T10:17:18.000Z","published_at":"2015-05-12T17:53:15.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/media/image1.JPEG\"}],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFrom Wikipedia: \\\"All of the trigonometric functions of an angle θ can be constructed geometrically in terms of a unit circle centered at O. Many of these terms are no longer in common use.\\\"\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"-1\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eNonetheless, suppose you do need to use one of these esoteric trigonometric functions that is not built into Matlab. Write a function that takes an angle as the first input (radians) and the trigonometric function name as the second input (string, function name will be completely spelled out). Make sure your function covers both the esoteric and commonly used functions; then it's a more useful tool. In particular, include sine, cosine, tangent, cosecant, secant, cotangent, versine, vercosine, coversine, covercosine, haversine, havercosine, hacoversine, hacovercosine, exsecant, excosecant, and chord. Formulas for each function are available\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"http://en.wikipedia.org/wiki/List_of_trigonometric_identities\\\"\u003e\u003cw:r\u003e\u003cw:t\u003ehere\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"},{\"partUri\":\"/media/image1.JPEG\",\"contentType\":\"image/JPEG\",\"content\":\"data:image/JPEG;base64,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JuIzJvBP91gR/MmvHzfWEE/h5lc9HLdJza+KzsdxDEkESRxqFRAFUDsBxUuMimI6yIGUgqRkEHNPr1opWXLsee7313KkNnb29xLNFEqSS43kd8f/AK6zdU8S2mmuYeZpx1ROi+xP+TUniLUzpumM6HE0h2J7ep/KsHwzoKXa/b71PMRmPlo3RueWPr3GDXl4nEVFVWGwytLr5HdQowdN16702S7luDxtA8mJrWSNT/ErBv6CujtbuC8gE1vKJEbuDUdxpdlcw+VLaxlcYGFwR9PSuQ0p30TxO9hvJhd9hB755U/X/E0vbYnCziq75oydr+Y/ZUcRCTpLlktbd0d52oyBVa5uobS3aedwkafeY9q4/wARas19eW1rp8pYAhg0bYy54HP4/r7V14rGQw8bvV6aHPh8NOvKy27nc0tV7WN4baJJZC7qoDOerHHWp66ou6TOdqzsLRRRVAFFFFABWV4gvbvTdA1C8sLOS8u4YGeGCNdzSPg7RgckZxnHOM4ya1aKAPmr4IeFLvWPHF74i1eKUtpzsT56kM1y+ckg9wCSe4JU19K0wKAWIAyxyfc4/wAMU+gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAM/VZ/Ktdg+85x+Hf8Aw/Gqukz7ZWiPRhkfUf8A1v5VX1Cbz7tgD8q/KP6/rVeNjFIrr1U5FRfU9CFH9zbqzqSccmvHPEfjHXfFfiV/DfhN2ihRir3EbbWfBwzF+qqDwCOT6nIFel+IL1rbwpqd7A2Hjs5ZIz6EISP5V4N4C13V9BlvZ9J0OTU3lCI7JG7mMAk9VBxkn8dvHSsK87NRvueHiptSUGdePgvqEyefceJP9LPJ/cMwz/vFgfxxmqemeI/EXw78SQ6P4huHutNlIxI7Fwqk43ox5wD1U9AOByCdX/hZHjP/AKEq5/78Tf4V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ACiiigAooooAKKKKACiiigAooooAKKKKAEpOB7Uua4T4ozzQeH7VoZXjY3aglWIONj8ce+KqMbuxjXqqlTc30O6BzyKWuX+H8sk3gyyklkZ3JkyzkknDsOprqKUlZ2KpT9pBT7i0UUUjQK8J+Jnwn1vWviBa6z4Zjjj+1BZLiZ5QiwSoQA57nI2nABOVJ717tRQBWsxcLZQC7ZGuRGomaMEKXx8xAPbOcVZrOuda0y01O10241C2ivbokQ27SDzJMAnhc5xwefoOpFaNABRRRQAUUUUAFFFFABRRRQAVyXxE/wCRcj/6+V/9BautqKSKOVdskaOvXDAEfrQBzvgL/kVof+uj/wA66eo440iQJGioo7KMAfgKkoAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK5X4ieIB4Z8BatqSvtnWExQEcHzH+VSPoSD9AaAPnuUj4i/H7A/e2kl+FHcGCHqfYFUJ+re9fV1fO/7OOgebf6t4hkT5YkW0hJ6Fmwz/iAF/wC+q+iKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAaTj0pa8r+Kd1cW+qWAhnliBhYkI5UHnvivRNGYtolgzHLG3jJP8AwEVcoWin3OaniFOrKnb4TRoooqDpCiiigAooooAKKKKACiiigAooooAKKKKACvLvjv4d/tn4fPfxJuuNLkFwMDkxn5XH0wQx/wB2vUagu7WG+sp7O5QSQTxtHIh6MrDBB+oJoA8l/Z88RDUfB9xokr5m02bKA/8APKTLDH0YP9MivYa+U/AV3N8N/jO+k3jlYHnbT5mPG5WI8t/YEhDnsCa+rKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAErC8UeHI/EunxWkk7wBJRLuVQSSARjn6/pW7RTTs7oicIzjyy2MrQNHTQdGg05JWlWIth2GCcsT0H1rVpD+lLmh3buOMVGKitkLRRRSKCiiigD5h+NWh3XhL4iW3ibTmaNL1xcxyD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KKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArjfiB8P9O8eaMbe4Ahv4QTa3YXLRn0Pcqe4/Ec12VFAHyf4Y8U+Ifg34tn0jVreRrFnH2m1zkMOgliJwM4HXgEcHBAI+ntF1rT/ABDpUGp6XcpcWkwyroenqCOxHQg1ieOvAWl+O9INrer5V3Hk214i5eFv0yp4yp69sEA1886VrHir4J+LZLK8gL2rnMtuWPlXKdBJG3Y46HGR0I4IoA+s6Kw/DPinSvFujR6npFwJYW4dDw8T4BKsOxH5HqCQQTuUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABXLfEDwsnjHwZf6VtH2kr5lsxx8sq5K8npnlSfRjXU0UAfN/7P3ieTTPEF54UvCypd5lhRgQUmQfMuOxKjn/cA719IVl6foGk6VdXN3Y6dbW9zdSNJPNHGA8jMcnLdSCecZxWpQAVyXxE/5FyP/r5X/wBBautrkviJ/wAi5H/18r/6C1AE3gL/AJFaH/ro/wDOunrmPAX/ACK0P/XR/wCddPQAUUUUAFFFFABRRRQAUUVyvjfx1pPgbSfteoSb7iTIt7RDh5mHp6KDjLHgD1JAIBc8VeKtL8HaLJqeqz7IxxHGvLytjhVHc/oOpIFfNU03in44eNQiL5VrH91eTDZRE9SeMsfXqxGBgDgs7LxZ8bvGDXEz7LWMgPLg+TZxnnaozyx9M5J5JABI+lfC3hXS/B+ix6XpMAjiX5nkbl5XxyzHuT+QHAAAxQAzwj4R0zwXokWmaZFgD5ppmHzzPjlmI/QdAOK6GiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArn/ABZ4R0rxnoz6bqsG5eWimTiSFum5T/ToehFdBRQB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RRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAV8i/BP8A5K/pH0uP/RL19dV8X6BZ+MvC+vw6xpmhakt3AXCF7CRh8ylTwR6E0AfaFQ3FxFa28tzPIscMSF5HY4CqBkkn0Aya+bP+FofF7/oEXH/gob/CqOoz/F/x9F/Z11Yap9lkPzRfZfssTezMQoI46EkcDvQBh/DhmvvjDpMtmrKr37SgAdEAZj/46DmvsOvKvhT8J/8AhCWfVtVljn1iWMoqx8pbqcZAJ6scYJ6AcDqSfVaACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//9k=\"}]}"}],"no_progress_badge":{"id":53,"name":"Unknown","symbol":"unknown","description":"Partially completed groups","description_html":null,"image_location":"/images/responsive/supporting/matlabcentral/cody/badges/problem_groups_unknown_2.png","bonus":null,"players_count":0,"active":false,"created_by":null,"updated_by":null,"deleted_by":null,"deleted_at":null,"restored_by":null,"restored_at":null,"created_at":"2018-01-10T23:20:29.000Z","updated_at":"2018-01-10T23:20:29.000Z","community_badge_id":null,"award_multiples":false}}